Pourquoi mes plists dans ~ / Library / Preferences sont-ils accompagnés d'un fichier de verrouillage correspondant dans Lion?

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

à quoi servent ces fichiers de verrouillage?

kch
la source
1
Il y a une réponse détaillée à cela sur cnet .
SSteve
1
Dans Super User: Qu'est-ce qu'un fichier de verrouillage?
Graham Perrin

Réponses:

8

Apple fournit aux développeurs une API Core Foundation Preference Services qui leur permet de gérer facilement leurs préférences. Apple utilise la même API et ces fichiers de verrouillage aident le système à savoir quels programmes écrivent dans les fichiers et aident le système à informer le programme en cours d'exécution lorsqu'un paramètre est modifié.

Le système gardera la trace d'un fichier ouvert même si vous le supprimez et le supprimez, mais il est probablement préférable de les laisser seuls (comme la plupart de ~ / Library) car il n'y a pas d'annulation pour les choses qui y sont stockées - elles sont là pour prendre en charge l '"annulation" du reste du système.

bmike
la source
0

Une pure conjecture malheureusement, mais généralement les fichiers de verrouillage sont là pour empêcher un fichier d'être édité par plus d'une chose à la fois et de provoquer une corruption.

Cependant, si vous exécutez fs_usage sur votre Mac pour surveiller l'activité du système de fichiers, rien ne semble toucher ces fichiers. Le Finder semble les lire tous de temps en temps, mais cela semble être le cas, même si vous modifiez les paramètres de préférence dans diverses applications.

Alistair McMillan
la source
lorsque vous quittez une application, le fichier de verrouillage n'est pas disparu. rm'd tous, ils ne semblent être recréés qu'au lancement de l'application. La modification des préférences pour une application ne les recrée pas.
kch
0

Avez-vous remarqué que vous pouvez apporter des modifications aux paramètres des applications? Je vois également ces fichiers de verrouillage et les préférences ne sont pas enregistrées dans les fichiers plist.

MISE À JOUR: J'ai découvert qu'une ACL précédente était en place qui m'empêchait d'apporter des modifications aux paramètres de l'application. En supprimant les listes de contrôle d'accès à l'aide de chmod -R -N sur mon dossier personnel, je peux maintenant apporter des modifications qui sont enregistrées.

Kent

Kent
la source