하드웨어 SSD TRIM관련 파일복구 이슈(인텔의 경우)
2012.08.19 10:46
https://forensic-proof.com/archives/640
위 링크에 따르면,
모든 SSD가 파일삭제시 동일하게 트림명령을 수행하지 않는다는 것을 알 수 있습니다.
또한 구 자료이기 때문에 인텔의 경우는 컨트롤러가 샌드포스로 교체되었기 때문에,
인텔도 다시 테스트해 봐야할 필요를 느꼈습니다.
테스트방법은 아래와같습니다.
1. '휴지통.txt'파일과 '쉬프트.txt'파일을 생성후, 각각 아무거나 데이터를 써넣음(복구가능 여부를 확인하기 위해 필수).
2. 휴지통.txt는 휴지통에 넣고, 비우기.
3. 쉬프트.txt는 Shift+Del 키로 지우기.
4. R-Studio를 통해 복구가능여부, 인지여부(MFT완전삭제여부)를 확인.(인지여부는 삭제된 파일목록이 뜨는지 여부를 확인)
새로운 테스트방법 제시합니다.
1. '휴지통.txt', '쉬프트(휴지통비우기전).txt', '쉬프트(휴지통비우기후).txt'파일을 생성후,
각각 아무거나 데이터를 써넣음(복구가능 여부를 확인하기 위해 필수).
2. 쉬프트(휴지통비우기전).txt는 Shift+Del 키로 지우기. (반드시 순서대로 해야합니다.)
3. 휴지통.txt는 휴지통에 넣고, 비우기.
4. 쉬프트(휴지통비우기후).txt는 Shift+Del 키로 지우기.
5. R-Studio를 통해 복구가능여부, 인지여부(MFT완전삭제여부)를 확인.(인지여부는 삭제된 파일목록이 뜨는지 여부를 확인)
위 테스트는
XP의 경우에는 자동트림이 존재하지 않으므로,
윈7만 테스트합니다.
또한 제가 알기론 AHCI 활성화 해야만 자동트림이 동작한다고 알고 있습니다.
귀차니즘에 의해 IDE호환모드에서는 테스트하지 않습니다.(자동트림 안된다고 생각하세요. 파시피카님 말씀에 따르면 IDE모드에서도 자동트림 된다네요.)
결과
(휴지통에 그냥 들어있는건 삭제된게 아니므로 따로 항목을 넣지 않습니다.)
휴지통비우기 : 목록인지불가. 고로 복구불가.
Shift+Del : 목록인지가능. 복구는 불가(복구는 하는데 파일 열어보면 Hex가 0x00 값만 채워짐)
Shift+Del(휴지통비우기전에 실행) : 목록인지불가. 고로 복구불가.(휴지통 비워야 나오는 결과)
휴지통비우기 : 목록인지불가. 고로 복구불가.
Shift+Del(휴지통비운후에 실행) : 목록인지가능. 복구는 불가(복구는 하는데 파일 열어보면 Hex가 0x00 값만 채워짐)
의외로 휴지통비우기가 잘 지우네요.
Shift+Del이 '흔적'을 남길거라곤 생각 못했는데...
참고로 인텔 툴박스 수동트림(SSD Optimizer) 또한 MFT까지 완전히 청소하지는 않습니다.
그러니 XP에서 수동트림하면, 단독 Shift+Del과 같은 수준의 삭제수준이라고 보면 되겠죠.
'휴지통 비우기'가 중요한 역할을 하네요.
Shift+Del 단독으로는 흔적이 남지만, 그 이후 휴지통비우기를 하면 Shift+Del까지도 흔적이 삭제됩니다.
(단, 휴지통에 아무것도 없으면 '휴지통비우기'가 활성화 되지 않으므로, Shift+Del 흔적을 지우려면 아무거나 또 지워야할듯)
그런데 어느정도까지 영향이 있는지는 모르겠네요.
지금은 테스트하느라 바로 옆에 붙어있었을건데,
한참의 시간간격(엄밀히 말해 데이터가 저장되는 위치간격)을 두고 테스트한것도 해당사항있는건지... 이건 당장 테스트할 수 없으니 시일이 지난뒤에 다시 해봐야할듯.
하지만 아예 그냥 휴지통 비우기로 지우는게 속편하겠네요.
저는 인텔 SSD밖에 없어서, 인텔만 테스트했습니다.(인텔 520/330 테스트)
다른 분들이 다른 SSD 테스트 결과를 올려주시면 감사하겠습니다. ^^
P.S. 정말 글을 성급하게 쓰면 안되는군요. 충분한 테스트부터 해봐야하는걸 다시 느꼈습니다.ㅠㅠ
댓글 [10]
-
파시피카 2012.08.19 11:11
-
메리아 2012.08.19 11:33
IDE 호환모드에서도 자동 트림이 지원되는 모양이군요. 안된다고 알고 있었는데...
참고하겠습니다. ^^
-
프루나 2012.08.19 20:50
SSD제조사에서 헷갈리게 만들어서 많은 분들이 혼동하시더군요.
트림 기능은 OS가 결정하는데 HDD 모드에 따라 결정되는 것 처럼 헷갈리게 해서 그럴겁니다.
요즘 XP와 멀티부팅 하는 경우가 많아서 IDE 호환모드 사용이 더 필요하더군요. ㅎㅎ
-
초월신 2012.08.19 11:24 휴지통 비우기와 탐색기 지우기가 차이나는게 신기하네요. (설마 양쪽 다 원본 위치 기준인건 아니겠죠?)
파티션 내부의 MFT 내용까지 인식해서 Trim 이나 GC동작을 하는 SSD도 있는 모양이군요. -
메리아 2012.08.19 11:35
저도 그냥 무조건 다 지워주는 Trim인줄 알았는데,
글의 맨 위에 있는 링크에 따르면 SSD마다 다르다네요.
또한 휴지통 비우기를 하느냐마느냐에 따라 다른것도 신기하구요.
제가 쓰는 인텔은 평소에도 제대로 지원되는듯해서 다행이네요.
그나저나 삼성SSD랑 버텍스 이런거 쓰시는분이 테스트해주시고 올려주시면 좋겠는데요. ㅠㅠ
-
초월신 2012.08.19 11:58 흠......실험 해 보려다가, 곰곰히 생각해 보니,
목록에 나오고 안나오고는 Trim과는 상관없는 문제 같습니다.
목록을 인지하지 못한다는건 MFT 내용이 완전히 사라졌다는 얘기겠고,
목록을 인지 했다는건 MFT가 살아있다는 그 차이밖엔 안되네요.
OS의 NTFS 관리자가 MFT를 클리어 했느냐 안했느냐의 문제네요.
SSD에서 실제 할당되지 않은 영역의 데이터를 요구 했을 때는
컨트롤러가 플래쉬 메모리 읽어보지도 않고 그냥 0으로 리턴하게 되므로,
0으로 나온다는건 Trim이 제대로 되었다는 소리네요.
내용 복구까지 다 될 정도로 Trim이 안되어야 비정상이라고 할 수 있겠습니다.
그 부분을 테스트 해봐야 되겠군요.
ps. 윈도우 트윅 팁 중에 NTFS의 MFT 예약영역 크기를 작게 지정하는 팁도 있던데,
혹시 그런거 설정하신 분들은 뭔가 다른 결과가 나올 수도 있겠네요.
-
메리아 2012.08.19 12:02
그게요,
맨위에 나온 링크에 따르면, SSD 제조사마다 다르다고 합니다.
저 링크에도 '인텔'이 잘 지운다고 나왔구요.
특히 '삼성'이 잘 안지우는걸로 나오네요.
(링크 내용대로라면 삼성꺼는 내용복구까지 되는겁니다. 다만 Shift+Del에서만 제대로 동작하는 듯 싶네요.)
그래서 다른 분들이 테스트 한번 해주십사 하는겁니다.
정말로 제조사별로 다른게 맞는지, 원 링크에서 뭔가 실수한건 없는지,
아니면 지금은 다들 무조건 제대로 trim하는 0 fill로 바뀐건지...
아래는 본문에 나온 링크에 있는 표입니다.
-
초월신 2012.08.19 12:48 메인컴은 다른 작업중이라 못하고, 세컨컴에 Agility4 64GB로 테스트를 했습니다.
복구툴은 따로 없어서 아예 WinHex로 디스크 구조를 눈으로 보면서 관찰 했습니다.
결과적으론 메리아님의 말씀대로, 휴지통 비우기/'탐색기에서 Shift-Del(영구삭제 기능)'간에 차이가 있었습니다.
실험 데이터는 생략하고, 결론만 말씀드리죠.
<윈도우 공통사항> (이라고 여겨지는 부분)
1) 탐색기에서 Shift-Del 영구 삭제를 해도 MFT 레코드는 지워지지 않고,
Delete 플래그만 삭제된 파일로 분류 됩니다.
일단 이 경우엔, 논리적으론 복구툴로 복구 가능한 파일로 남게 됩니다.
(파일 내용이 있느냐 없느냐는 별개 문제 입니다.)
2) 휴지통 비우기를 하면 MFT 레코드도 클리어 됩니다. 복구가 안됩니다.
(여기서도 파일 내용까지 다 지워졌느냐 아니냐는 별개 문제 입니다.)
3) 휴지통 비우기를 하면 기존에 불완전하게 지워졌던(레코드만 남아있는)
다른 파일까지 전부 초기화(MFT삭제) 해 버리는 듯 합니다.
<SSD 마다 달라지는 부분>
4) Agility4는 MFT에 레코드가 남아있으면 Trim을 수행하지 않습니다.
불완전하게 삭제된 상태(MFT 레코드가 남아있는 상태)에서는 파일 데이터 내용을
그대로 유지하고 있음을 확인했습니다. (완전한 복구 가능)
5) 메리아님의 인텔 SSD는 삭제되면 MFT 레코드 존재 유무 따윈 관계 없이
그냥 지워버리는 듯 합니다. 윈도우가 내리는 Trim 명령에 그대로 반응하는 거죠.
즉, SSD에 따라 달라지는 건
- MFT를 해석해서 MFT 레코드 유무에 따라 다르게 동작하느냐,
- 아니면 윈도우가 내리는 삭제 명령과 Trim 명령에 곧이 곧대로 기계적으로 반응하느냐
이 차이로 보입니다.
휴지통 기능을 자주 쓰는 경우라면 양 쪽 모두 비슷할 것이고,
휴지통 기능을 안쓰는 경우라면 무조건 Trim 하는 SSD(인텔 등..)가 퍼포먼스 유지에 유리하다고 봅니다.
(저는 휴지통 기능 안쓰는데....젠장....)
물론 복구 기능이 중요하신 분이라면 MFT를 해석하는 SSD가 유리하겠죠.
하지만 MFT를 해석해서 Trim을 거부하는 이유가 있겠죠.
나중에 나온 제품들일 수록 MFT를 해석해서 지능적으로 동작하려는 모습을 보이는 듯 하네요.
(인텔도 자사 컨트롤러 쓴 제품이 예전제품이던데...)
-
초월신 2012.08.19 12:54 프로그램 만들 때 Win32 API로 DeleteFile을 수행할 때는 어떻게 될 지도 궁금해 지는군요.
파라미터에 따라 달라지는건지, 아니면 다른 함수를 써서 MFT 까지 클리어 해야 되는건지....
나중에 프로그램 하나 짜서 테스트 해 봐야 겠네요.
Agility4에서 트림된 영역은 FFFFFF.......로 나오네요.
※ Trim은 0 fill이 아닙니다.
ERASE 사이클을 발생시키는 작업일 뿐이지, 0으로 채워넣는 '기록작업'이 아니죠.
'ERASE 상태'와 '0으로 기록된 상태'는 엄연히 다른 상태 입니다.
Trim 된 영역이 0000.....으로 나오는 이유는, 그냥 컨트롤러가 읽어보지도 않고 0000....을 리턴해 주기 때문이죠.
-
메리아 2012.08.19 13:12
아, 그런거군요.
전 erase = 0 fill정도로 생각했었는데...
그리고 저는 원본 영역을 볼줄은 몰라서,
'복구'하는 것으로 확인했습니다. 하드에 복구해보니, 전부 0x00값이더라 이거죠.
그래서 0 fill이라고 생각했습니다. ^^
번호 | 제목 | 글쓴이 | 조회 | 추천 | 등록일 |
---|---|---|---|---|---|
[공지] | 강좌 작성간 참고해주세요 | gooddew | - | - | - |
274 | 하드웨어| 파워 서플라이 배선도 [10] | DOS | 6243 | 13 | 06-27 |
273 | 하드웨어| 안드로이드 활용 완전정복 ‘팁&테크 40선’ [1] | Native 64 | 6247 | 0 | 06-14 |
272 | 하드웨어| 남아공월드컵 ~ TV시청 부부젤라 소리 줄이기 [2] | 클리포드 | 6291 | 0 | 06-16 |
271 | 하드웨어| AFU DOS 바이오스 업데이트 | gooddew | 6331 | 0 | 06-17 |
270 | 하드웨어| USB 스피커 잡음 잡기 [10] | gooddew | 6356 | 6 | 03-23 |
269 | 하드웨어| 파일과 폴더의 본질이 어떻건 확장자는... [4] | 유기농초코 | 6379 | 0 | 01-15 |
268 | 하드웨어| 메인보드 밧데리 탈착법 | gooddew | 6379 | 0 | 06-17 |
267 | 하드웨어| 아수스 윈도우용 플래쉬 업데이트 툴 링크 | gooddew | 6470 | 0 | 06-17 |
266 | 하드웨어| 부팅중에 나타나는 여러 가지 에러메시지에 대한 설명 | gooddew | 6486 | 0 | 06-17 |
265 | 하드웨어| BIOS ID의 의미 - AWARD | gooddew | 6496 | 0 | 06-17 |
264 | 하드웨어| AMI - DOS 바이오스 업데이트 | gooddew | 6541 | 0 | 06-17 |
263 | 하드웨어| Server 2008 Enterprise, Small Business Server 2008 추가 | gooddew | 6592 | 0 | 06-17 |
262 | 하드웨어| USB 3.0 포트가 USB 2.0 으로 인식될때 | 매니안 | 6597 | 3 | 07-09 |
261 | 하드웨어| 인텔 USB 3.0 에 대하여... (내용추가) [21] | 디폴트 | 6632 | 10 | 10-10 |
260 | 하드웨어| 밧데리 교체 방법 | gooddew | 6699 | 0 | 06-17 |
259 | 하드웨어| BIOS ID의 의미 - AMI | gooddew | 6699 | 0 | 06-17 |
258 | 하드웨어| BIOS Masterpasswords | gooddew | 6732 | 0 | 06-17 |
257 | 하드웨어| 작업 별 그래픽카드 메모리 점유율 [1] | 메트로작전 | 6759 | 1 | 02-08 |
256 | 하드웨어| Tag(태그)란? [2] | ♥ZARD | 6785 | 0 | 03-17 |
255 | 하드웨어| 쿨러 소음잡고 수명 늘리기 [7] | K딸배 | 6817 | 3 | 02-11 |
트림은 이전에 레이드 설정 했을때만 작동이 안되었습니다 (지금은 레이드에서도 트림 지원)
IDE 나 AHCI 는 모드 관계없이 윈도우7에서 자동 트림을 지원합니다 XP는 수동