Warum werden meine Listen in ~ / Library / Preferences von einer passenden Sperrdatei in Lion begleitet?

13
$ cd ~/Library/Preferences
$ ls -1 | grep plist | head -10
AddressBookMe.plist
com.adiumX.adiumX.plist
com.adiumX.adiumX.plist.lockfile
com.apple.AddressBook.plist
com.apple.AddressBook.plist.lockfile
com.apple.BezelServices.plist
com.apple.BezelServices.plist.lockfile
com.apple.BluetoothAudio.plist
com.apple.Console.LSSharedFileList.plist
com.apple.Console.LSSharedFileList.plist.lockfile

Wofür sind diese Sperrdateien?

kch
quelle
1
Auf cnet gibt es eine ausführliche Antwort .
Samstag,
1
In Super User: Was ist eine .lock-Datei?
Graham Perrin

Antworten:

8

Apple stellt Entwicklern eine Core Foundation Preference Services- API zur Verfügung, mit der sie Einstellungen einfach verwalten können. Apple verwendet dieselbe API, und diese Sperrdateien helfen dem System dabei, festzustellen, welche Programme in die Dateien schreiben, und helfen dem System, das ausgeführte Programm zu benachrichtigen, wenn eine Einstellung geändert wird.

Das System behält die Übersicht über eine Datei, die geöffnet ist, auch wenn Sie sie in den Papierkorb werfen und löschen. Es ist jedoch wahrscheinlich am besten, diese Dateien (wie die meisten in ~ / Library) in Ruhe zu lassen, da dort gespeicherte Elemente nicht rückgängig gemacht werden können. Sie dienen der Unterstützung das "Rückgängigmachen" des restlichen Systems.

bmike
quelle
1

Sperrdateien werden verwendet, um sicherzustellen, dass nur eine App gleichzeitig mit einer Einstellungsdatei interagiert. Die Idee ist, dass eine App die Sperrdatei in einem exklusiven Modus öffnet, während sie die Liste öffnet.

Quelle:

Steven Fisher
quelle
0

Leider nur Vermutungen, aber normalerweise verhindern Sperrdateien, dass eine Datei von mehr als einer Sache gleichzeitig bearbeitet wird und dadurch beschädigt wird.

Wenn Sie jedoch fs_usage auf Ihrem Mac ausführen, um die Dateisystemaktivität zu beobachten, scheint diese Dateien nicht viel zu berühren. Der Finder scheint sie alle gelegentlich durchzulesen, aber das scheint es auch zu sein, wenn Sie die Voreinstellungen in verschiedenen Anwendungen ändern.

Alistair McMillan
quelle
Wenn Sie eine App beenden, wird die Sperrdatei jedoch nicht gelöscht. Alles in allem scheinen sie erst beim Start der App neu erstellt worden zu sein. Durch Ändern der Einstellungen für eine App werden diese nicht neu erstellt.
KCH
0

Haben Sie bemerkt, dass Sie Einstellungen an Anwendungen vornehmen können? Ich sehe diese Sperrdateien auch und Einstellungen werden nicht in den Plist-Dateien gespeichert.

UPDATE: Ich habe festgestellt, dass eine frühere ACL vorhanden war, die mich daran gehindert hat, Änderungen an den Anwendungseinstellungen vorzunehmen. Durch Entfernen der ACLs mit chmod -R -N in meinem Ausgangsordner kann ich jetzt Änderungen vornehmen, die gespeichert werden.

Kent

Kent
quelle