Ich habe einige Tests durchgeführt und kann eine (hoffentlich) maßgebliche Antwort geben.
Kurze Antwort: Die Versionen werden auf derselben Festplatte (oder demselben Festplatten-Image) wie die eigentliche Datei gespeichert, sodass bei Versionen keine Informationen außerhalb Ihres verschlüsselten Images verloren gehen sollten. Aber es könnte ein weiteres Leck geben, siehe unten.
Lange Antwort: Versions erstellt einen unsichtbaren Ordner mit dem Namen ".DocumentRevisions-V100" am Anfang jedes Volumes mit einer internen Struktur wie der folgenden:
.DocumentRevisions-V100
.cs
ChunkStorage (this is presumably used to store chunks of large files that didn't entirely change between versions)
AllUIDs (this is only created on disks that have permissions ignored)
ChunkTemp
db-v1
db.sqlite (this is the primary index of document IDs, etc)
PerUID (this is only created on disks that have ownership respected)
501 (documents created/owned by user #501)
502 (etc...)
staging (???)
Informationen zum SQLite-Index und zum Hintergrund-Daemon, der den Zugriff darauf ermöglicht, finden Sie in John Siracusas ausgezeichneter Rezension auf der ars technica .
Die Dokumentversionen selbst werden entweder in AllUIDs oder in PerUID / youruserid in Unterverzeichnissen gespeichert. Darunter erhält jedes versionierte Dokument ein eigenes Unterverzeichnis, das mit 1 beginnt. Darunter befindet sich ein einzelner Ordner mit dem Namen "com.apple.documentVersions". Darunter wird jede Revision als separates Dokument gespeichert (es sei denn, sie ist in Abschnitte unterteilt - - Ich habe nicht mit großen Dokumenten experimentiert, die mit einer UUID und einer Typerweiterung benannt sind. Wenn ich beispielsweise (Benutzer # 501) ein RTF-Dokument auf meinem Startvolume bearbeite und mehrere Revisionen speichere, werden diese möglicherweise gespeichert als:
/.DocumentRevisions-V100/PerUID/501/1/com.apple.documentVersions/0787B7C3-DE11-4065-9FD9-61870212011D.rtf
/.DocumentRevisions-V100/PerUID/501/1/com.apple.documentVersions/D533CF36-0D49-4910-B0EB-C92395C05726.rtf
Wenn ich dann eine andere RTF-Datei öffnete und eine Version davon speicherte, könnte sie folgenden Namen haben:
/.DocumentRevisions-V100/PerUID/501/2/com.apple.documentVersions/74A6EF6E-A22A-4196-B560-40ABDBF46DF4.rtf
Wenn ich es auf meinem SecretDocs-Image speichere (mit ignorierter Inhaberschaft gemountet), werden Versionen wie folgt gespeichert:
/Volumes/SecretDocs/.DocumentRevisions-V100/AllUIDs/1/com.apple.documentVersions/2ED4DAFD-9BCF-4158-BFDB-F9EEC631E44A.rtf
Übrigens scheinen Berechtigungen für die Versionsdateien aus den Originaldateien geklont worden zu sein. Berechtigungen für die umschließenden Ordner erlauben in der Regel nur die Ausführung (dh Sie können die Dateinamen nicht sehen, aber wenn Sie den Dateinamen kennen, können Sie darauf zugreifen). Beispielsweise ist PerUID / 501 so eingestellt, dass die Ausführung nur für Benutzer 501 und kein Zugriff für andere Benutzer zulässig ist. Der Ordner db-v1 ermöglicht nur den Root-Zugriff. Ohne genauer nachzuforschen, scheint es ziemlich verschlossen zu sein.
Nun zu diesem anderen Leck, mit dem ich Ihnen gedroht habe: Lion-Apps neigen dazu, ihren Status beim Beenden zu speichern. Wenn Sie also ein vertrauliches Dokument beim Beenden geöffnet haben, werden möglicherweise einige seiner Informationen (wie etwa ein Screenshot) in ~ gespeichert / Library / Saved Application State / someappid.savedState. Solange Sie schließen, bevor Sie speichern, denke ich, dass Sie hier sicher sind.
Eine ausgezeichnete Frage von Phil M!
Daten, die sich auf Apple-Versionen beziehen, sind manchmal nicht auf /.DocumentRevisions-V100 beschränkt
Ich werde das so kurz wie möglich halten. Schlüssel Konzepte:
Unter bestimmten Umständen
- https://discussions.apple.com/message/15739595#15739595 (2011-07-25)
Auch leicht angepasst von https://discussions.apple.com/message/15741724#15741724
In meinem letzten Test mit demselben AFP-Server die Versionen für einen Remote-.png-Screenshot:
sind lokal und innerhalb der ordnungsgemäß ausgeblendeten
~/Library
... finden Sie unter Automatisches Speichern, Versionen, Lebenslauf und Transparenter App-Lebenszyklus (TAL): Neue technische Informationensind nicht vor Ort bei
/.DocumentRevisions-V100
sind nicht aus der Ferne an
/.DocumentRevisions-V100
…
Lokal sind möglicherweise einige verwandte Daten vorhanden
/.DocumentRevisions-V100
, in diesem Fall handelt es sich jedoch um lokale Versionen der Remote-Datei, die nicht auf den Root-Benutzer beschränkt sind. In Screenshot 001 unter http://www.wuala.com/grahamperrin/public/2011/07/25/e/?mode=gallery sehen Sie beispielsweise die lokalen Versionen der Remote-Datei, die nach dem Trennen der Verbindung zum Dateiserver geöffnet wurden.Zurück zur Eröffnungsfrage hier in Ask Different… verschlüsselte .sparsebundle-Bilder, Sicherheit. Bedenken Sie:
Im Zusammenhang mit einem verschlüsselten Festplattenimage für Sparse-Bundles ist die Wahrscheinlichkeit, dass Benutzer JHFS + (Unterstützung für permanenten Versionsspeicher) verwenden, höher als bei MS-DOS (mangelnde Unterstützung).
Allerdings sollte jemand testen, ob unverschlüsselte Versionen im Home-Verzeichnis des Benutzers verbleiben - das möglicherweise unverschlüsselt ist -, nachdem ein solches Volume nicht gemountet wurde.
Persönlich finde ich fseventer in solchen Testsituationen am nützlichsten. YMMV.
Trennung
Einige dieser Antworten werfen möglicherweise Fragen auf, die sich nicht auf die Verschlüsselung, nicht auf Festplattenimages mit geringer Dichte und nicht auf die Sicherheit beziehen. Dies sind möglicherweise komplexe Themen, also bitte: Anstatt Fragen in Kommentaren unter dieser Antwort zu stellen, sollte ich wahrscheinlich dazu ermutigen, jede Frage einzeln zu stellen.
quelle
Ich habe in der Entwicklerdokumentation von Apple das Versionsfeature überprüft und es scheint darauf hinzudeuten, dass die vorherigen Versionen eines Dokuments an demselben Speicherort (dh in derselben Datei oder in demselben Ordner) wie die aktuelle Version des Dokuments gespeichert sind. Die Dokumentation ist jedoch kaum detailliert.
Es gibt auch den Artikel von AppleInsider mit dem Titel "Inside Mac OS X 10.7 Lion: Automatisch speichern, Dateiversionen und Time Machine" , der besagt:
Ich habe noch keine detaillierteren Beschreibungen der Funktionsweise der Versions-Funktion gefunden.
quelle
.DocumentRevisions-V100
(und nicht in derselben Datei wie das Dokument) gespeichert sindGordon, das sind gute Neuigkeiten für alle, ebenso wie für die Softwareentwickler von Knox und Espionage (ich benutze beide Apps).
Hier ist ein Szenario, auf das Benutzer jedoch achten sollten. Wenn Sie auf eine Datei in einem eingebundenen verschlüsselten Image auf einem externen Laufwerk zugreifen, sind die Versionsdateien wahrscheinlich unverschlüsselt auf dem Systemlaufwerk des Benutzers vorhanden. Eine Problemumgehung besteht darin, das .sparsebundle vor dem Mounten auf das Systemlaufwerk zu kopieren.
Ein weiteres Szenario besteht darin, dass sich das .sparsebundle auf einem anderen Snow Leopard-Mac im selben Netzwerk befindet und das Image im Netzwerk freigegeben wird, sodass das Mounten auf einem Lion-Mac möglich ist, indem Sie im Finder darauf zugreifen. (Ich mache das manchmal.) Dies würde definitiv dazu führen, dass alle Versionsdateien unverschlüsselt auf der Systemfestplatte des Benutzers abgelegt werden. Eine Möglichkeit, dies zu umgehen, besteht darin, den Snow Leopard Mac mithilfe der Bildschirmfreigabe zu steuern und dann das Image auf diesem Mac bereitzustellen und zu bearbeiten.
Die Quintessenz ist, dass die Benutzer in Lion mehr verstehen und vorsichtiger als je zuvor sein müssen, wenn sie verschlüsselte Festplattenimages verwenden, wenn sich die Images nicht auf dem Systemlaufwerk befinden. Ich hoffe, die Entwickler von Knox und Espionage werden ihre Kunden vor diesen Problemen warnen.
EDIT: Grahams Antwort scheint die meisten meiner Annahmen zu stützen.
quelle
.DocumentRevisions
auf dem verschlüsselten Volume abgelegt wird . @ Gordons Antwort scheint das auch zu bestätigen.