Fitur Versi baru di Lion membuat file tersembunyi yang menyimpan versi lama dokumen yang sedang Anda kerjakan jika Anda ingin kembali ke versi dokumen yang lebih lama. Jika saya menyeret dokumen ke Trash, lalu pilih Secure Empty Trash dari menu Finder, apakah file versi tersembunyi dihapus dengan aman bersama dengan dokumen?
12
Jawaban:
Dugaan saya adalah tidak, tetapi ini bukan jawaban yang pasti.
Saya pertama kali membuat file .txt yang sangat besar (~ 160 MB), dan membuat perubahan pada file di TextEdit. Seperti yang diharapkan, file dan versinya muncul di
/.DocumentRevisions-V100/PerUID
. File tampaknya ~ 160 MBls
, tetapi menurutdu -h
mereka menggunakan 0B pada disk. Jumlah tautan keras untuk setiap file adalah 1. Folder bernama.cs
(chunk storage) di bawahnya/.DocumentRevisions-V100
telah bertambah sekitar 110 MB.Setiap kali saya mengubah file, hal berikut terjadi pada
/.DocumentRevisions-V100
:/.DocumentRevisions-V100/staging/
. Hitungan tautan keras untuk file ini adalah 1./.DocumentRevisions-V100/PerUID/<UID>/<#>/com.apple.documentVersions
. Hitungan tautan keras tetap 1./.DocumentRevisions-V100/.cs
bertambah sekitar 2 MB.Ruang kosong drive (
df
) konsisten dengan apa yangdu
saya katakan. Ruang kosong akan turun secara signifikan, dan kemudian kembali ke hampir seperti sebelum menyimpan versi baru.Selanjutnya, saya mencoba merobek file dengan Secure Empty Trash. OS X tampaknya menggunakan program yang dipanggil
Locum
untuk menghapus file dengan aman. Melampirkanfs_usage
untukLocum
menunjukkan banyak sekali membaca dan menulis ke file .txt asli. SaatLocum
melakukan hal tersebut, semua versi di bawah/.DocumentRevisions-V100/PerUID
masih dapat diakses dengan data yang utuh. SetelahLocum
selesai menulis data, itu memutuskan tautan file .txt asli, dan versi di/.DocumentRevisions-V100/PerUID
tiba-tiba menghilang.Locum
lalu beralih ke hal lain di Sampah, sambil tidak pernah menyentuh/.DocumentRevisions-V100
.Apa pun yang ada di
/.DocumentRevisions-V100
dalamnya tidak terhapus dengan aman.EDIT: Saya harus menambahkan bahwa apa pun yang ada dalam
/.DocumentRevisions-V100
entah bagaimana dikaburkan atau dikompresi (folder itu hanya ~ 120 MB). Saya belum membaca bagian versi atau sistem berkas dari ulasan Siracusa ... mungkin ada petunjuk di sana.sumber
Saya baru saja menguji ini, dan tampaknya file yang lebih lama memang bisa dihapus. Tidak masalah jika saya memilih Secure Empty Trash atau hanya mengosongkan tempat sampah secara normal, mereka juga dihapus.
Sedikit lebih detail:
Untuk menguji ini, saya mengaktifkan pengguna root untuk memungkinkan saya mengintip ke dalam
/.DocumentRevisions-V100
dan file-file di dalamnya. Struktur persis folder ini dan isinya lebih baik dijelaskan dalam ulasan Lion John Siracusa (Internal, Revisi Dokumen).Saya membuat beberapa file, kemudian membuat beberapa perubahan, menyimpan versi baru. Folder yang berisi revisi diisi dengan file baru saat saya menyimpan versi baru. Di dalam folder tingkat atas ini, ada folder bernama
PerUID
, yang menampung subfolder untuk setiap akun pengguna. Setiap folder akun pengguna berisi serangkaian folder bernomor, satu folder untuk setiap file yang revisi disimpan. Dengan demikian, revisi yang sebenarnya disimpan sebagai file beberapa tingkat di bawah dalam hierarki ini, dengan nama file hash. Mengosongkan tempat sampah (bagaimanapun juga) akan menghapus file-file ini, tetapi struktur folder sebelumnya akan tetap di tempatnya.Sebelum menghapus:
/.DocumentRevisions-V100/PerUID/0/5/com.apple.revisions
Folder ini masih memiliki versi sebelumnya yang ada di dalamnya.Setelah menghapus:
/.DocumentRevisions-V100/PerUID/0/5/com.apple.revisions
Folder ini masih ada, tetapi kosong.Saya tidak memeriksa folder lain di dalamnya
/.DocumentRevisions-V100/
, jadi saya tidak memeriksa database yang ada di dalamnya. Siracusa menjelaskan lebih rinci, tetapi tampaknya ada yang berisi basis data untuk melacak perubahan dan memetakan file pengguna ke revisi yang disimpan oleh sistem. Saya cukup yakin bahwa tidak ada konten dokumen yang disimpan di sana, meskipun saya tidak yakin tentang nama file, dan jika nama file ada, apakah mereka hash atau tidak.sumber