La nouvelle fonctionnalité Versions de Lion crée des fichiers cachés qui stockent les anciennes versions du document sur lequel vous travaillez au cas où vous souhaiteriez revenir à une ancienne version du document. Si je fais glisser un document vers la corbeille, puis sélectionnez Secure Vider Trash dans le menu Finder, les fichiers de version masqués sont-ils supprimés en toute sécurité avec le document?
12
Réponses:
Je suppose que non, mais ce n'est pas une réponse définitive.
J'ai d'abord créé un très gros fichier (~ 160 Mo) .txt et apporté des modifications au fichier dans TextEdit. Comme prévu, ce fichier et ses versions sont apparus dans
/.DocumentRevisions-V100/PerUID
. Les fichiers semblaient faire ~ 160 Mols
, mais selondu -h
eux, ils utilisaient 0B sur le disque. Le nombre de liens durs pour chaque fichier était de 1. Un dossier appelé.cs
(stockage de blocs) sous/.DocumentRevisions-V100
avait augmenté d'environ 110 Mo.Chaque fois que je modifiais le fichier, les événements suivants se produisaient dans
/.DocumentRevisions-V100
:/.DocumentRevisions-V100/staging/
. Le nombre de liens matériels pour ce fichier est 1./.DocumentRevisions-V100/PerUID/<UID>/<#>/com.apple.documentVersions
. Le nombre de liens fixes est resté 1./.DocumentRevisions-V100/.cs
augmenté d'environ 2 Mo.L'espace libre du lecteur (
df
) était conforme à ce quidu
m'a été dit. L'espace libre diminuerait considérablement, puis reviendrait à ce qu'il était avant d'enregistrer une nouvelle version.Ensuite, j'ai essayé de déchiqueter le fichier avec Secure Empty Trash. OS X semble utiliser un programme appelé
Locum
pour supprimer le fichier en toute sécurité. La pièce jointefs_usage
àLocum
affiche énormément de lectures et d'écritures dans le fichier .txt d'origine. Pendant qu'ilLocum
fait son travail, toutes les versions sous/.DocumentRevisions-V100/PerUID
sont toujours accessibles avec des données intactes. Après avoirLocum
terminé l'écriture sur les données, il dissocie le fichier .txt d'origine et les versions/.DocumentRevisions-V100/PerUID
disparaissent soudainement.Locum
passe ensuite à autre chose dans la Corbeille, sans jamais toucher/.DocumentRevisions-V100
.Tout ce qui se trouve
/.DocumentRevisions-V100
n'est pas effacé en toute sécurité.EDIT: Je dois ajouter que tout ce qui est en
/.DocumentRevisions-V100
est en quelque sorte (le dossier était seulement ~ 120 Mo) ou obscurcie comprimé. Je n'ai pas encore lu les versions ou les sections du système de fichiers de la revue de Siracusa… il y a peut-être des indices là-dedans.la source
Je viens de tester cela et il semble que les anciens fichiers soient effectivement supprimés. Peu importe que je choisisse Secure Empty Trash ou que je vide simplement la corbeille normalement, ils ont également été supprimés.
Un peu plus en détail:
Pour tester cela, j'ai permis à l'utilisateur root de me permettre de regarder
/.DocumentRevisions-V100
et les fichiers qu'il contient. La structure exacte de ce dossier et son contenu sont mieux expliqués dans la revue Lion de John Siracusa (Internals, Document Revisions).J'ai créé quelques fichiers, puis j'ai apporté des modifications et enregistré de nouvelles versions. Le dossier qui contenait les révisions rempli de nouveaux fichiers lors de l'enregistrement de nouvelles versions. Dans ce dossier de niveau supérieur, il y a un dossier appelé
PerUID
, qui contient des sous-dossiers pour chaque compte d'utilisateur. Chaque dossier de compte d'utilisateur contient une série de dossiers numérotés, un dossier pour chaque fichier dont les révisions ont été enregistrées. Ainsi, les révisions réelles sont enregistrées sous forme de fichiers à quelques niveaux plus bas dans cette hiérarchie, avec des noms de fichiers hachés. Vider la corbeille (dans les deux cas) supprimerait ces fichiers, mais la structure de dossiers précédente resterait en place.Avant de supprimer:
/.DocumentRevisions-V100/PerUID/0/5/com.apple.revisions
ce dossier contient toujours les versions précédentes.Après la suppression:
/.DocumentRevisions-V100/PerUID/0/5/com.apple.revisions
ce dossier existe toujours, mais il est vide.Je n'ai pas inspecté les autres dossiers à l'intérieur
/.DocumentRevisions-V100/
, donc je n'ai pas vérifié les bases de données qui y sont contenues. Siracusa va plus en détail, mais ils semblent exister pour contenir des bases de données pour suivre les modifications et mapper les fichiers de l'utilisateur aux révisions enregistrées par le système. Je suis assez certain qu'aucun contenu de document n'y est enregistré, bien que je ne sois pas sûr des noms de fichiers, et si des noms de fichiers sont présents, s'ils sont hachés ou non.la source