คุณสมบัติของเวอร์ชั่น OS X Lion และประวัติย่อเก็บข้อมูลที่แคชไว้สำหรับรูปภาพ. sparsebundle ที่เข้ารหัสอย่างปลอดภัยหรือไม่?


10

ฉันจัดเก็บข้อมูลที่ละเอียดอ่อนบนแล็ปท็อปของฉันในรูปภาพ. sparsebundle ที่เข้ารหัสซึ่งทำด้วยแอพอย่าง Disk Utility, Knox และ Espionage คำถามคือถ้าฉันอัพเกรดเป็น Lion เมื่อฉันทำงานกับไฟล์ที่อยู่ในดิสก์อิมเมจที่เมานต์เหล่านี้และ Lion กำลังบันทึกไฟล์เวอร์ชันที่เก่ากว่าเป็นเวอร์ชันเก่าเหล่านี้ที่จัดเก็บไว้ในรูปภาพที่เข้ารหัส (ตามที่ควรจะเป็น ) หรือที่อื่น ๆ หากรุ่นถูกเก็บไว้ที่อื่นจะถูกเข้ารหัสหรือไม่?

คำตอบ:


10

ฉันทำการทดสอบเสร็จแล้วและสามารถให้คำตอบที่เชื่อถือได้ (หวังว่า)

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

คำตอบยาว: รุ่นสร้างโฟลเดอร์ที่มองไม่เห็นที่ด้านบนของแต่ละไดรฟ์ชื่อ ".DocumentRevisions-V100" ด้วยโครงสร้างภายในดังนี้:

.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            (???)

สำหรับข้อมูลเกี่ยวกับดัชนี SQLite และภูตพื้นหลังที่ไกล่เกลี่ยเข้าถึงมันอ่านรีวิวยอดเยี่ยมจอห์น Siracusa ที่ ARS ทางด้านเทคนิค

เวอร์ชันเอกสารจะถูกเก็บไว้ในไดเรกทอรีย่อยทั้ง AllUID หรือ PerUID / youruserid ภายใต้นั้นเอกสารที่มีเวอร์ชันแต่ละฉบับจะได้รับไดเรกทอรีย่อยของตนเองโดยมีหมายเลขเริ่มต้นที่ 1 ภายใต้นั้นเป็นโฟลเดอร์เดียวชื่อ "com.apple.documentVersions" และภายใต้นั้นการแก้ไขแต่ละฉบับจะถูกจัดเก็บเป็นเอกสารแยกต่างหาก - ฉันไม่ได้ทดลองกับเอกสารขนาดใหญ่) ตั้งชื่อด้วย UUID และส่วนขยายประเภท ตัวอย่างเช่นถ้าฉัน (ผู้ใช้ # 501) แก้ไขเอกสาร rtf ในปริมาณการบูตของฉันและบันทึกการแก้ไขหลายรายการพวกเขาอาจถูกจัดเก็บเป็น:

/.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

หากฉันเปิดไฟล์ rtf อื่นและบันทึกเวอร์ชันของไฟล์มันอาจมีชื่อว่า:

/.DocumentRevisions-V100/PerUID/501/2/com.apple.documentVersions/74A6EF6E-A22A-4196-B560-40ABDBF46DF4.rtf

หากฉันบันทึกลงในภาพ SecretDocs ของฉัน (เมาท์โดยไม่สนใจความเป็นเจ้าของ) เวอร์ชันจะถูกจัดเก็บเช่น:

/Volumes/SecretDocs/.DocumentRevisions-V100/AllUIDs/1/com.apple.documentVersions/2ED4DAFD-9BCF-4158-BFDB-F9EEC631E44A.rtf

BTW, การอนุญาตในไฟล์เวอร์ชันดูเหมือนว่าจะถูกโคลนจากไฟล์ต้นฉบับ สิทธิ์ในโฟลเดอร์ที่ล้อมรอบมักจะอนุญาตให้ใช้งานได้เท่านั้น (เช่นคุณไม่เห็นชื่อไฟล์ แต่ถ้าคุณรู้ชื่อไฟล์คุณสามารถเข้าถึงได้) ตัวอย่างเช่น PerUID / 501 ถูกตั้งค่าให้อนุญาตให้ดำเนินการเฉพาะสำหรับผู้ใช้ 501 เท่านั้นไม่อนุญาตให้บุคคลอื่นเข้าถึงได้ โฟลเดอร์ db-v1 อนุญาตการเข้าถึงรูทเท่านั้น ดูเหมือนว่ามันจะไม่ได้รับการตรวจสอบอย่างละเอียด

ตอนนี้เกี่ยวกับการรั่วไหลอื่น ๆ ที่ฉันข่มขู่คุณ: แอป Lion มีแนวโน้มที่จะบันทึกสถานะของพวกเขาเมื่อคุณออกดังนั้นหากคุณเปิดเอกสารลับเมื่อคุณออกข้อมูลบางอย่าง (เช่นฉันคิดว่าหน้าจอ) อาจถูกเก็บไว้ใน ~ / Library / สถานะแอปพลิเคชันที่บันทึกไว้ / someappid.savedState ตราบใดที่คุณปิดก่อนบันทึกฉันคิดว่าคุณปลอดภัยที่นี่


จะเกิดอะไรขึ้นถ้า sparsebundle ตั้งอยู่บนดิสก์ภายนอก (อาจเป็น HFS, FAT หรือ NTFS) หรือบนเครื่อง Snow Leopard บนเครือข่าย รุ่นต่างๆยังคงเก็บอยู่ในดิสก์เดียวกันกับไฟล์หลักหรือไม่?
Phil M

ฉันต้องการตั้งคำตอบนี้เป็นคำตอบที่ยอมรับ แต่ฉันไม่เห็นปุ่มนั้นฉันไม่รู้ว่าทำไม
Phil M

การรั่วไหลของ "สถานะแอปพลิเคชันที่บันทึกไว้" มีอยู่ใน Mountain Lion หรือไม่?
orome

@raxacoricofallapatorius: ฉันยังไม่ได้ยืนยันอย่างเต็มที่ (รูปแบบของข้อมูลในโฟลเดอร์. saveState ไม่ชัดเจน) แต่ฉันสงสัยอย่างยิ่งว่าการรั่วไหลยังคงอยู่ใน 10.8
Gordon Davisson

2

เป็นคำถามที่ยอดเยี่ยมจาก Phil M!

บางครั้งข้อมูลที่เกี่ยวข้องกับรุ่น Apple ไม่ได้ จำกัด อยู่ที่ /.DocumentRevisions-V100

ฉันจะเก็บเรื่องนี้ให้สั้นที่สุด แนวคิดหลัก:

  • Transparent App Lifecycle (TAL) - บันทึกอัตโนมัติเวอร์ชันกลับมาทำงานต่อ
  • ระบบไฟล์รองรับการจัดเก็บเวอร์ชันถาวร

ในบางสถานการณ์

…ใน 10.7 (รุ่น Build 11A511): ~/Libraryมีการใช้ไดเรกทอรีย่อยด้วยการเข้าถึงไม่ จำกัด เฉพาะผู้ใช้รูท ...

https://discussions.apple.com/message/15739595#15739595 (2011-07-25)

นอกจากนี้ยังปรับตัวเล็กน้อยจากhttps://discussions.apple.com/message/15741724#15741724


ในการทดสอบล่าสุดของฉันกับเซิร์ฟเวอร์ AFP เดียวกันเวอร์ชันสำหรับภาพหน้าจอ. png ระยะไกล:

...

reunion:~ centrimadmin$ ls -ld  /.DocumentRevisions-V100
ls: /.DocumentRevisions-V100: No such file or directory

ในพื้นที่อาจมีข้อมูลที่เกี่ยวข้องในบาง/.DocumentRevisions-V100กรณี แต่ในกรณีนี้เวอร์ชันของไฟล์รีโมตเป็นแบบโลคัลและไม่ จำกัด เฉพาะผู้ใช้รูท ดูตัวอย่างภาพหน้าจอ 001 ที่http://www.wuala.com/grahamperrin/public/2011/07/25/e/?mode=galleryสาธิตไฟล์รีโมตเวอร์ชันโลคัลเปิดหลังจากยกเลิกการเชื่อมต่อจากไฟล์เซิร์ฟเวอร์


กลับไปที่คำถามเปิดที่นี่ใน Ask Different …เข้ารหัสภาพ. sparsebundle ความปลอดภัย พิจารณาสิ่งนี้:

เข้ารหัสดิสก์อิมเมจมัดกระจัดกระจาย MS-DOS

ในบริบทของอิมเมจของดิสก์บันเดิลที่เข้ารหัสผู้ใช้อาจมีแนวโน้มที่จะใช้ JHFS + (รองรับที่เก็บข้อมูลรุ่นถาวร) มากกว่า MS-DOS (ขาดการสนับสนุน)

อย่างไรก็ตาม: บางคนควรทดสอบเพื่อดูว่ารุ่นที่ไม่ได้เข้ารหัสนั้นยังคงอยู่ในไดเรกทอรีหลักของผู้ใช้หรือไม่ซึ่งอาจไม่ได้รับการเข้ารหัส - หลังจากไดรฟ์ข้อมูลเช่นนั้นถูกยกเลิกการต่อเชื่อมหรือไม่

โดยส่วนตัวฉันพบว่าfseventerมีประโยชน์มากที่สุดในสถานการณ์ทดสอบเช่นนี้ YMMV

การแยก

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


หากคุณสงสัยว่าทำไม "... รุ่นของไฟล์รีโมตเป็นโลคัล ... " โปรดดูAFP เวอร์ชันของ Apple และความปลอดภัย / ความเป็นส่วนตัวภายใต้apple.stackexchange.com/questions/19299/…
Graham Perrin

1

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

นอกจากนี้ยังมีบทความจาก AppleInsider ที่ชื่อ"Inside Mac OS X 10.7 Lion: บันทึกอัตโนมัติ, รุ่นของไฟล์และ Time Machine"ซึ่งกล่าวว่า:

ซึ่งแตกต่างจาก Time Machine รุ่นต่อท้าย snapshot การเปลี่ยนแปลงทั้งหมดในไฟล์เอกสารในท้องถิ่นหลีกเลี่ยงความยุ่งเหยิงของระบบไฟล์และความต้องการในการเข้าถึงการสำรองข้อมูลจาก Time Capsule หรือดิสก์ภายนอกอื่น ๆ เพียงเพื่อย้อนกลับไปเป็นรุ่นก่อนหน้านี้

ฉันยังไม่พบคำอธิบายโดยละเอียดเพิ่มเติมเกี่ยวกับการทำงานของคุณสมบัติของรุ่น


ผมก็รู้สึกว่าพวกเขาจะเก็บไว้ใน.DocumentRevisions-V100(และไม่ได้อยู่ในไฟล์เดียวกับเอกสาร)
Thilo

1
@Thilo: ใช่คุณพูดถูก ฉันถูกเข้าใจผิดว่าเอกสารของผู้พัฒนาเชื่อมโยงกับคุณสมบัติของรุ่นกับคุณลักษณะ "บันทึกอัตโนมัติ" ตามที่ระบุไว้ในคำตอบที่ละเอียดกว่าที่กำหนดโดยผู้อื่นเอกสารรุ่นเก่าจะไม่ถูกเก็บไว้ในไฟล์หรือโฟลเดอร์เดียวกับเวอร์ชันปัจจุบัน บทความ AppleInsider ผิดในเรื่องนั้น
Rinzwind

0

Gordon นี่เป็นข่าวดีสำหรับทุกคนเช่นเดียวกับผู้พัฒนาซอฟต์แวร์สำหรับ Knox และ Espionage (ฉันใช้ทั้งสองแอพเหล่านี้)

นี่คือสถานการณ์ที่ผู้ใช้ควรระวัง หากคุณกำลังเข้าถึงไฟล์ภายในอิมเมจดิสก์ที่เข้ารหัสซึ่งติดตั้งอยู่บนไดรฟ์ภายนอกไฟล์เวอร์ชันอาจจะมีอยู่ในไดรฟ์ระบบของผู้ใช้ในรูปแบบที่ไม่ได้เข้ารหัส วิธีหนึ่งในการแก้ไขปัญหานี้คือการคัดลอก. sparsebundle ไปยังไดรฟ์ระบบก่อนทำการติดตั้ง

อีกสถานการณ์คือถ้า. sparsebundle อยู่ใน Snow Leopard Mac เครื่องอื่นในเครือข่ายเดียวกันและมีการแชร์รูปภาพบนเครือข่ายทำให้สามารถติดตั้งบน Lion Mac ได้โดยการเรียกดูผ่าน Finder (ฉันทำเช่นนี้ในบางครั้ง) สิ่งนี้จะส่งผลให้ไฟล์รุ่นใด ๆ วางอยู่บนดิสก์ระบบของผู้ใช้ในรูปแบบที่ไม่ได้เข้ารหัส วิธีแก้ปัญหาหนึ่งสำหรับสิ่งนี้คือการใช้การแชร์หน้าจอเพื่อควบคุม Snow Leopard Mac จากนั้นเมานต์และทำงานในภาพบน Mac เครื่องนั้น

บรรทัดล่างคือใน Lion ผู้คนจำเป็นต้องเข้าใจมากขึ้นและระมัดระวังมากขึ้นกว่าเดิมเมื่อใช้อิมเมจดิสก์ที่เข้ารหัสหากภาพไม่ได้อยู่ในไดรฟ์ระบบ ฉันหวังว่าผู้พัฒนา Knox และหน่วยสืบราชการลับจะเตือนลูกค้าเกี่ยวกับปัญหาเหล่านี้

แก้ไข: คำตอบของเกรแฮมดูเหมือนจะสนับสนุนสมมติฐานส่วนใหญ่ของฉัน


"หากคุณกำลังเข้าถึงไฟล์ภายในอิมเมจดิสก์ที่เข้ารหัสซึ่งติดตั้งอยู่บนไดรฟ์ภายนอกไฟล์เวอร์ชันอาจจะมีอยู่ในไดรฟ์ระบบของผู้ใช้ในรูปแบบที่ไม่ได้เข้ารหัส" คุณได้รับข้อมูลจากที่ใด ฉันถือว่ามันจะถูกวางลงบนไดรฟ์ที่เข้ารหัส.DocumentRevisions @ คำตอบของกอร์ดอนก็ดูเหมือนจะยืนยันว่า
Thilo

@Gordon ฉัน DK ที่ฉันมีความคิดว่าหากไฟล์ไม่ได้อยู่ในดิสก์ระบบไฟล์รุ่นจะถูกเก็บไว้ในดิสก์ระบบ (ดิสก์ภายนอกอาจมีระบบไฟล์ที่แตกต่างกันไม่ทราบว่าเรื่องนี้) ฉันคิดว่าฉันอ่านสิ่งนี้ที่ใดที่หนึ่ง แต่ฉันไม่สามารถหาแหล่งที่มาได้อีกต่อไป ฉันคิดว่ากอร์ดอนอ้างถึงกรณีเฉพาะของฉันเท่านั้น Gordon คุณสามารถยืนยันได้ว่าเวอร์ชั่นนั้นถูกเก็บไว้ในดิสก์เดียวกันกับไฟล์จริงโดยไม่คำนึงถึงการฟอร์แมต ฯลฯ ของดิสก์หรือไม่? ฉันรู้ว่ากอร์ดอนพูดว่า "ดิสก์ (หรือดิสก์อิมเมจ)" แต่เขาไม่ได้พูดถึงการทดสอบประเภทนี้
Phil M

@Gordon บางที 2 สถานการณ์เฉพาะที่กล่าวถึง (ดิสก์ USB & บนเครือข่ายบน SL Mac) สามารถทดสอบได้ฉันชอบที่จะพิสูจน์ว่าไม่ถูกต้องฉันต้องการให้มันใช้งานได้จริง
Phil M

ข้อดีของดิสก์ภายนอกในรูปแบบไฟล์ที่ไม่ใช่ Mac บางทีพวกเขาอาจไม่ได้รับรุ่นเลยเหรอ? OTOH วิธีนี้คือ "แฮ็ก" ที่ด้านบนของระบบไฟล์ปกติอาจหมายความว่ามันใช้งานได้เช่นกันพูดว่า FAT32
Thilo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.