ทำไมฉันถึงมีอยู่ใน ~ / Library / Preferences พร้อมกับ lockfile ที่ตรงกันใน 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

กุญแจเหล่านี้มีไว้เพื่ออะไร?


1
มีคำตอบในเชิงลึกนี้เป็นใน CNET
SSteve

คำตอบ:


8

Apple ให้Core API Preference Services API แก่ผู้พัฒนาที่ทำให้การจัดการค่ากำหนดง่ายขึ้น Apple ใช้ API เดียวกันและไฟล์ล็อคเหล่านี้ช่วยให้ระบบทราบว่าโปรแกรมใดกำลังเขียนไฟล์และช่วยให้ระบบแจ้งเตือนโปรแกรมที่กำลังรันอยู่เมื่อมีการเปลี่ยนแปลงการตั้งค่า

ระบบจะติดตามไฟล์ที่เปิดแม้ว่าคุณจะทิ้งและลบทิ้ง แต่มันอาจเป็นการดีที่สุดที่จะปล่อยให้อยู่คนเดียว (เช่นส่วนใหญ่ ~ / ไลบรารี่) เนื่องจากไม่มีการยกเลิกสิ่งที่เก็บไว้ที่นั่น - พวกเขาอยู่ที่นั่นเพื่อสนับสนุน "เลิกทำ" ของส่วนที่เหลือของระบบ


1

Lockfiles ใช้เพื่อให้แน่ใจว่ามีเพียงแอปพลิเคชั่นเดียวที่โต้ตอบกับไฟล์การตั้งค่าพร้อมกัน แนวคิดคือแอปเปิด lockfile ในโหมดเอกสิทธิ์ขณะที่เปิด plist

ที่มา:


0

โชคไม่ดีที่จะคาดเดา แต่โดยทั่วไปแล้วจะมีการล็อกไฟล์เพื่อหยุดไฟล์ที่ถูกแก้ไขโดยมากกว่าหนึ่งครั้งและทำให้เกิดความเสียหาย

อย่างไรก็ตามหากคุณรัน fs_usage บน Mac ของคุณเพื่อดูกิจกรรมของระบบไฟล์ดูเหมือนจะไม่มีอะไรแตะต้องไฟล์เหล่านี้ เครื่องมือค้นหาดูเหมือนจะอ่านทุกครั้ง แต่ดูเหมือนจะเป็นเช่นนั้นแม้ว่าคุณจะเปลี่ยนการตั้งค่าในแอปพลิเคชันต่างๆ


เมื่อคุณออกจากแอป lockfile จะไม่หายไป หากพวกเขาทั้งหมดพวกเขาดูเหมือนจะถูกสร้างขึ้นใหม่เมื่อเปิดตัวแอพเท่านั้น การเปลี่ยนค่าเริ่มต้นสำหรับแอปจะไม่สร้างขึ้นมาใหม่
kch

0

คุณสังเกตเห็นว่าคุณสามารถทำการเปลี่ยนแปลงการตั้งค่ากับแอพพลิเคชั่นได้หรือไม่? ฉันเห็น lockfiles เหล่านี้ด้วยและค่ากำหนดจะไม่ถูกบันทึกลงในไฟล์ plist

UPDATE: ฉันค้นพบว่า ACL ก่อนหน้านี้อยู่ในตำแหน่งที่ทำให้ฉันไม่สามารถเปลี่ยนแปลงการตั้งค่าแอปพลิเคชันได้ ด้วยการลบ ACLs โดยใช้ chmod -R -N ในโฟลเดอร์บ้านของฉันตอนนี้ฉันสามารถทำการเปลี่ยนแปลงที่บันทึกไว้ได้แล้ว

เคนท์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.