Union mount บน Linux


11

สหภาพติดนำเสนอมุมมองรวมของไดเรกทอรีหลาย (สาขา) ในลำดับชั้นเดียว ตกลง แต่ฉันจะใช้อันไหนในการฝึกซ้อมและอันไหนดี?

เทคโนโลยียูเนี่ยนเมาท์จำนวนมากมีอยู่ในระบบ Linux ที่ทันสมัย: OverlayFS , aufs , UnionFS , ระบบไฟล์ที่ใช้ FUSE หลากหลาย, ...

ในกรณีที่ใช้ฉันจะตัดสินใจได้อย่างไรว่าจะเลือกอันไหนที่เหมาะสม โดยเฉพาะอย่างยิ่ง:

  • สิ่งใดที่ต้องการการเข้าถึงรูทบนระบบทั่วไป? (กล่าวอีกนัยหนึ่งผู้ใช้ที่ไม่มีสิทธิพิเศษสามารถสร้างยูเนี่ยนเมาท์ได้หรือไม่)
  • สามารถติดตั้งโปรแกรม/ใดได้บ้าง (ด้วยการเข้าถึงรูทแน่นอน)
  • คนไหนที่สนับสนุนการเขียนไปยังสาขาพื้นฐาน? (เช่นถ้า/fooและ/barได้รับการติดตั้งสหภาพเพื่อ/unionผมสามารถเขียน/fooและ/bar?)
  • นโยบายใดที่สนับสนุนการกำหนดค่าได้สำหรับการเขียน (เช่นฉันสามารถส่งไฟล์ที่สร้างขึ้นใหม่ไปยังสาขา B แม้ว่าฉันจะได้รับเนื้อหาจากสาขา A เมื่อมีไฟล์อยู่ในทั้งสองสาขาหรือไม่)
  • รายการใดบ้างที่สนับสนุนลำดับความสำคัญระหว่างสาขาที่ขึ้นอยู่กับไฟล์ (เช่นฉันสามารถรับไฟล์ใหม่ล่าสุดในทุกสาขาที่มีหรือไม่)

ตัวอย่างการใช้งานจะได้รับการชื่นชม

โปรดหลีกเลี่ยงคำตอบที่เน้นเฉพาะจุด ฉันกำลังมองหาคำตอบที่ครอบคลุมที่ตรวจสอบซอฟต์แวร์ที่มีอยู่ (สิ่งที่คล้ายกับอะไรคือการผูกติด ) คำตอบที่ดีจะได้รับรางวัล

คำตอบ:


12

ในแต่ละจุดที่ระบุ:

  • การเข้าถึงรูท: หากใช้ FUSE ก็ไม่จำเป็นต้องใช้รูทหากไม่ได้ใช้ FUSE มันต้องการรูทเว้นแต่คุณจะตั้งค่าพิเศษด้วยความสามารถ (อาจเป็นอันตราย) หรือเนมสเปซ

  • การติดตั้ง/: ฉันคิดว่าคุณหมายถึงระบบไฟล์รูทเมื่อเริ่มต้นซึ่งในกรณีใด ๆ ของพวกเขาที่ทำงานในโหมดเคอร์เนลควรในทฤษฎีการทำงานแม้ว่าบางคนมีความน่าเชื่อถือมากกว่าคนอื่น ๆ LiveCD ส่วนใหญ่ทำสิ่งนี้ดังนั้นฉันจึงขอแนะนำให้ค้นหาข้อมูลเกี่ยวกับประเด็นนี้โดยเฉพาะ

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

  • นโยบายการเขียนที่กำหนดค่าได้: ฉันไม่รู้เกี่ยวกับสิ่งนี้โดยเฉพาะ แต่ฉันคิดว่า 3 ขนาดใหญ่ (UnionFS, AUFS และ OverlayFS) ไม่รองรับ

  • ลำดับความสำคัญของไฟล์ขึ้นอยู่กับ: ฉันคิดว่าการตกหลุมชนิดนี้ภายใต้คำถามย่อยที่สามเช่นกันและเช่นนั้นฉันไม่ทราบว่ามีข้อใดที่สนับสนุนเป็นพิเศษ

ตามที่เฉพาะเจาะจงมากขึ้นในแต่ละของพวกเขา:

  • UnionFS: เท่าที่ฉันสามารถบอกได้นี่เป็นการนำระบบไฟล์สหภาพแบบซ้อนกันได้มาใช้สำหรับ Linux มันมีมานานแล้วและถูกใช้โดย Linuxes LiveCD จำนวนมาก มันทำงานในโหมดเคอร์เนลและต้องการแพทช์เพื่อเคอร์เนล upstream ที่จะใช้

  • AUFS: มีต้นกำเนิดมาจากทางแยกของ UnionFS และจากนั้นก็กลายเป็นของตัวเอง หนึ่งนี้พยายามที่จะได้รับการฉีดและถูกปฏิเสธเนื่องจากคุณภาพของรหัส มันถูกแทนที่ด้วย UnionFS ใน LiveCDs ดิสทริบิวชันส่วนใหญ่เป็นตราสารอนุพันธ์ Debian และ Gentoo เช่นเดียวกับ UnionFS มันทำงานในโหมดเคอร์เนลและต้องการแพตช์ไปยังเคอร์เนล upstream

  • โอเวอร์เลย์เอฟเอส: ฉันไม่รู้อะไรมากเกี่ยวกับการพัฒนาดั้งเดิมของอันนี้นอกเหนือจากที่ได้รับการสนับสนุนจากอนุพันธ์ของ BSD สองตัวด้วย โดยเฉพาะอย่างยิ่งการใช้งานระบบไฟล์ overlay / union upstream ในเคอร์เนล Linux มันยังทำงานในโหมดเคอร์เนล

  • UnionFS-FUSE: โครงการนี้มีชื่อค่อนข้างสับสนว่าจริง ๆ แล้วไม่มีอะไรเกี่ยวข้องกับ UnionFS นอกเหนือจากการนำเสนอฟังก์ชันการทำงานที่เหมือนกัน มันเป็นการใช้งาน FUSE ที่ใช้กันอย่างแพร่หลายของระบบไฟล์แบบรวม แต่นั่นคือทั้งหมดที่ฉันรู้เกี่ยวกับมัน

  • mhddfs: อันนี้เป็นค่าผิดปกติที่คล้ายกับการใช้งานไฟล์ที่มีความละเอียดระดับ RAID-0 มากกว่าระบบไฟล์ยูเนี่ยนทั่วไป สนับสนุนการทำสมดุลไฟล์ในหลายไดเรกทอรีสำรองตามการใช้พื้นที่ นอกจากนี้ยังใช้ FUSE

สองสิ่งที่ควรทราบที่ไม่เฉพาะเจาะจงสำหรับการใช้งานเฉพาะ:

  • ตัวเลือกทั้งหมดในเคอร์เนลมีข้อ จำกัด เกี่ยวกับสิ่งที่ระบบไฟล์สำรองสามารถที่สำคัญที่สุดคือไม่ทำงานกับระบบไฟล์เครือข่ายหรือ BTRFS

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

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