คุณโพสต์ในความคิดเห็นที่คุณกำลังทำงานกับระบบ Mac OS X นี่เป็นเบาะแสสำคัญสำหรับวัตถุประสงค์ของ._*
ไฟล์เหล่านี้
._*
รายการเก็บถาวรเหล่านี้เป็นกลุ่มของข้อมูลAppleDoubleที่มีข้อมูลเพิ่มเติมที่เกี่ยวข้องกับไฟล์ที่เกี่ยวข้อง (รายการที่ไม่มี._
คำนำหน้า) มันถูกสร้างขึ้นโดยฟังก์ชั่นเฉพาะของcopyfile (3)ตระกูลMac OS X AppleDouble blobs จัดเก็บข้อมูลการควบคุมการเข้าถึง (ACLs) และแอ็ตทริบิวต์ส่วนขยาย (โดยทั่วไปคือตัวค้นหาธงและ "ทรัพยากรส้อม" แต่ xattrs สามารถใช้เพื่อจัดเก็บข้อมูลชนิดใดก็ได้)
ระบบจัด Mac OS X เก็บเครื่องมือ ( bsdtar
(ยังเป็น symlinked tar
) gnutar
และpax
) จะสร้าง._*
สมาชิกเก็บไฟล์ใด ๆ ที่มีข้อมูลการขยายใด ๆ ที่เกี่ยวข้องกับมัน ในโหมด "unarchive" พวกเขาจะถอดรหัสสมาชิกไฟล์เก็บถาวรเหล่านั้นและนำข้อมูลส่วนขยายไปใช้กับไฟล์ที่เกี่ยวข้อง สิ่งนี้จะสร้างไฟล์เก็บถาวร“ full fidelity” สำหรับใช้กับระบบ Mac OS X โดยการรักษาและแยกข้อมูลทั้งหมดที่ระบบไฟล์ HFS + สามารถจัดเก็บได้ในภายหลัง
เครื่องมือเก็บถาวรที่สอดคล้องกันในระบบอื่น ๆ ไม่ทราบว่าจะให้การจัดการพิเศษกับ._*
ไฟล์เหล่านี้ดังนั้นพวกเขาจะแตกไฟล์เป็นไฟล์ปกติ เนื่องจากไฟล์ดังกล่าวค่อนข้างไร้ประโยชน์ในระบบอื่นจึงมักถูกมองว่าเป็น "ไฟล์ขยะ" ตามลําดับหากระบบที่ไม่ใช่ Mac OS X สร้างไฟล์เก็บถาวรที่มีไฟล์ปกติที่เริ่มต้นด้วย._
เครื่องมือยกเลิกการเก็บถาวร Mac OS X จะพยายามถอดรหัสไฟล์เหล่านั้นเป็นข้อมูลเพิ่มเติม
อย่างไรก็ตามมีวิธีการที่ไม่มีเอกสารประกอบ (?) ในการทำให้ระบบจัดเก็บข้อมูล Mac OS X ที่ระบบจัดทำนั้นทำงานเหมือนในระบบ Unixy อื่น ๆ : ตัวแปรสภาพแวดล้อม COPYFILE_DISABLE การตั้งค่าตัวแปรนี้ (เป็นค่าใด ๆ แม้แต่สตริงว่าง) จะป้องกันผู้จัดเก็บจากการสร้าง._*
สมาชิกไฟล์เก็บถาวรเพื่อแสดงข้อมูลเพิ่มเติมที่เกี่ยวข้องกับไฟล์ที่เก็บถาวร การปรากฏตัวของมันจะช่วยป้องกันไม่ให้ผู้จัดเก็บพยายามตีความสมาชิกที่เก็บถาวรเช่นข้อมูลเพิ่มเติม
COPYFILE_DISABLE=1 tar czf new.tar.gz …
COPYFILE_DISABLE=1 tar xzf unixy.tar.gz …
คุณอาจตั้งค่าตัวแปรนี้ในไฟล์เริ่มต้นของเชลล์ถ้าคุณต้องการทำงานแบบนี้บ่อยกว่าไม่
# disable special creation/extraction of ._* files by tar, etc. on Mac OS X
COPYFILE_DISABLE=1; export COPYFILE_DISABLE
จากนั้นเมื่อคุณต้องการเปิดใช้งานคุณลักษณะอีกครั้ง (เพื่อรักษา / กู้คืนข้อมูลเพิ่มเติม) คุณสามารถ“ ยกเลิกการตั้งค่า” ตัวแปรสำหรับแต่ละคำสั่ง:
(unset COPYFILE_DISABLE; tar czf new-osx.tar.gz …)
ผู้จัดเก็บใน Mac OS X 10.4 ก็ทำสิ่งที่คล้ายกันแม้ว่าพวกเขาจะใช้ตัวแปรสภาพแวดล้อมที่แตกต่างกัน: COPY_EXTENDED_ATTRIBUTES_DISABLE