“Secure Empty Trash”는 OS X Lion의 휴지통에있는 문서의 숨겨진 버전 파일을 안전하게 삭제합니까? 버전의 문서를 저장하는 숨겨진

Lion의 새로운 버전 기능은 이전 버전의 문서로 되돌리려는 경우 작업중인 이전 버전의 문서를 저장하는 숨겨진 파일을 만듭니다. 문서를 휴지통으로 끈 다음 Finder 메뉴에서 휴지통 비우기를 선택하면 숨겨진 버전 파일이 문서와 함께 안전하게 삭제됩니까?



답변

내 추측은 아니요, 그러나 결정적인 대답은 아닙니다.

먼저 매우 큰 (~ 160MB) .txt 파일을 만들고 TextEdit에서 파일을 변경했습니다. 예상대로 해당 파일과 해당 버전이에 표시되었습니다 /.DocumentRevisions-V100/PerUID. 파일은 ~ 160MB ~ ls로 보이지만 du -h디스크에서 0B를 사용했습니다. 각 파일의 하드 링크 수는 1입니다. .cs(청크 저장소) 라는 폴더는 /.DocumentRevisions-V100약 110MB 증가했습니다.

파일을 변경할 때마다 다음이 발생했습니다 /.DocumentRevisions-V100.

  1. ~ 160MB 파일이에 생성되었습니다 /.DocumentRevisions-V100/staging/. 이 파일의 하드 링크 수는 1입니다.
  2. 파일이로 이동 한 것으로 보입니다 /.DocumentRevisions-V100/PerUID/<UID>/<#>/com.apple.documentVersions. 하드 링크 수는 1로 유지되었습니다.
  3. ~ 160MB 파일은 0B가되었으며 크기는 /.DocumentRevisions-V100/.cs약 2MB 증가했습니다.

드라이브의 여유 공간 ( df)이 du나에게 말한 것과 일치했습니다 . 여유 공간이 크게 줄어든 후 새 버전을 저장하기 전에 원래 상태로 돌아갑니다.

다음으로 Secure Empty Trash로 파일을 파쇄하려고했습니다. OS X은 Locum파일을 안전하게 삭제하기 위해 호출 된 프로그램을 사용하는 것 같습니다 . 부착 fs_usageLocum엄청 많은 쇼 읽고 원래이 .txt 파일에 기록합니다. Locum그 일을 하는 동안 /.DocumentRevisions-V100/PerUID데이터의 모든 버전은 그대로 액세스 할 수 있습니다. 후 Locum완료 쓰기 데이터를 통해, 그것은 원래이 .txt 파일 링크를 해제하고있는 버전이 /.DocumentRevisions-V100/PerUID갑자기 사라집니다. Locum그런 다음 휴지통을 터치하지 않고 휴지통의 다른 항목으로 이동합니다 /.DocumentRevisions-V100.

들어간 내용이 /.DocumentRevisions-V100안전하게 지워지지 않습니다.

편집 : 나는 어떤 것을 추가해야 이다 에서 /.DocumentRevisions-V100어떻게 든 난독 화 또는 압축을 (폴더 만 ~ 1백20메가바이트했다). 시라쿠사 리뷰의 버전이나 파일 시스템 섹션을 아직 읽지 않았습니다.


답변

방금 이것을 테스트했으며 이전 파일이 실제로 삭제 된 것으로 보입니다. 휴지통 비우기를 선택했거나 휴지통을 정상적으로 비운 경우에도 문제가되지 않았습니다.

조금 더 자세히 :

이것을 테스트하기 위해 루트 사용자가 /.DocumentRevisions-V100파일 을 들여다 볼 수있게했습니다 . 이 폴더의 정확한 구조와 내용은 John Siracusa의 Lion Review (Internals, Document Revisions) 에서 자세히 설명 합니다.

몇 개의 파일을 만든 다음 몇 가지 사항을 변경하여 새 버전을 저장했습니다. 새 버전을 저장할 때 개정판이 포함 된 폴더가 새 파일로 채워졌습니다. 이 최상위 PerUID폴더에는 각 사용자 계정의 하위 폴더가있는이라는 폴더가 있습니다. 각 사용자 계정 폴더에는 일련의 번호가 매겨진 폴더가 있으며, 수정본이 저장된 각 파일마다 하나의 폴더가 있습니다. 따라서 실제 개정판은 해시 파일 이름과 함께이 계층 구조에서 몇 단계 아래로 파일로 저장됩니다. 휴지통을 비우면 (어느 쪽이든) 이러한 파일이 삭제되지만 이전 폴더 구조는 그대로 유지됩니다.

삭제하기 전에 :
/.DocumentRevisions-V100/PerUID/0/5/com.apple.revisions
이 폴더에는 여전히 이전 버전이 포함되어 있습니다.

삭제 후 :
/.DocumentRevisions-V100/PerUID/0/5/com.apple.revisions
이 폴더는 여전히 존재하지만 비어 있습니다.

에있는 다른 폴더를 검사하지 않았으므로 폴더 내에 /.DocumentRevisions-V100/포함 된 데이터베이스를 확인하지 않았습니다. 시라쿠사는 더 자세하게 설명하지만 변경 사항을 추적하고 사용자 파일을 시스템이 저장 한 개정판에 매핑하는 데이터베이스를 포함하고있는 것으로 보입니다. 파일 이름이 확실하지 않지만 파일 이름이 존재하는 경우 해시 여부에 대해서는 확실하지 않지만 문서 내용이 저장되어 있지 않을 것이라고 확신합니다.