UID / GID ที่แตกต่างกันเมื่อใช้ไดรฟ์ USB ที่จัดรูปแบบ ext4 กับคอมพิวเตอร์เครื่องอื่น


11

ปัญหาในการใช้ระบบไฟล์เช่นext4บน USB stick หรือการ์ดหน่วยความจำคือเมื่อติดตั้งในระบบอื่นอาจมี UID / GID ของดิสก์อยู่

สามารถแก้ไขได้ด้วยตัวเลือกการเมานท์หรือไม่?


คำถามที่คล้ายกัน: askubuntu.com/questions/12009/…
jofel

คำตอบ:


11

ฉันคิดว่าคุณหวังว่าจะพบสิ่งที่เทียบเท่าuid=Nและgid=Nตัวเลือกที่สนับสนุนโดยระบบไฟล์อื่น ๆ บางmountคำสั่งของ Linux รู้เกี่ยวกับ ขออภัย แต่ไม่ ext4 ไม่มีตัวเลือกนั้น

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

เมื่อคุณใช้ระบบไฟล์เช่น ext4 บนสื่อบันทึกข้อมูลแบบถอดได้คุณกำลังบอกว่าคุณใส่ใจเรื่องต่าง ๆ เช่นการอนุญาต POSIX นั่นหมายความว่าคุณต้องใช้ขั้นตอนแบบเดียวกันเพื่อซิงโครไนซ์ ID ผู้ใช้และกลุ่มตามที่คุณต้องการพูด NFS

หากคุณไม่สนใจสิทธิ์จริง ๆ อาจมีระบบไฟล์ที่เหมาะสมกว่าสำหรับสถานการณ์ของคุณ

ฉันลอง UDF ในฐานะผู้สมัครสำหรับระบบไฟล์ดังกล่าวหลังจากความเห็นด้านล่าง แต่อนิจจามันไม่ทำงาน:

  • หากคุณสร้างระบบไฟล์ UDF บนลีนุกซ์หนึ่งกล่อง, เพิ่มไฟล์, เปลี่ยนการอนุญาต, และเมานต์มันบนลีนุกซ์อื่น, มันจะเชื่อฟังการอนุญาตที่พบที่นั่น, แม้ว่าคุณจะให้uid=N,gid=N. คุณต้องซิงค์ UID และ GID ที่นี่เช่นเดียวกับ NFS

  • Mac OS X ทำงานตามที่คาดหวัง: เชื่อว่ามันเป็นเจ้าของทุกอย่างในระบบไฟล์ UDF ที่สร้างขึ้นบนกล่อง Linux แต่เพิ่มไฟล์ไปยังดิสก์และมันจะตั้ง UID และ GID ของไฟล์ซึ่งกล่อง Linux จะเชื่อฟัง

  • จากนั้นถ้าคุณพยายามที่จะติดตั้งระบบแฟ้มที่อยู่บนกล่อง FreeBSD invalid argumentก็ตะโกน ฉันคิดว่านี่เป็นเพราะเคอร์เนล devs ไม่ทราบว่า UDF สามารถปรากฏบนสื่อที่ไม่ใช่ออปติคัลเพียงเพราะฉันไม่พบรายงานความสำเร็จออนไลน์ใด ๆ อาจมีคาถาวิเศษที่ฉันพลาดไป

  • มีรายงานว่าเป็นไปได้ที่จะทำให้ฮาร์ดไดรฟ์ UDF ทำงานบน Windows ได้ แต่มันค่อนข้างพิถีพิถันในการสร้าง หากคุณต้องการให้สิ่งนี้ใช้งานได้อาจเป็นการดีที่สุดที่จะฟอร์แมตจากภายใน Windows จากบรรทัดคำสั่ง:

    format /fs:udf x:

    อย่าใช้/q: ที่สร้างระบบไฟล์ที่มีโอกาสน้อยที่จะเมานต์บนระบบปฏิบัติการอื่น ๆ

    โปรดทราบว่า UDF เป็นแบบอ่าน / เขียนบน Vista และใหม่กว่าเท่านั้น XP จะติดตั้งฮาร์ดไดรฟ์ UDF ที่สร้างบน Vista แต่จะไม่สามารถเขียนลงไปได้

FAT บางรูปแบบอาจเป็นตัวเลือกที่ดีที่สุดที่นี่ หากคุณกำลังหลีกเลี่ยงว่าเพราะ FAT32 4 GB จำกัด ขนาดไฟล์คุณอาจต้องการที่จะมองเข้าไปในexFAT มีรุ่น FUSEให้ใช้ฟรี

NTFS อาจทำงานได้เช่นกันหากคุณกำลังใช้งาน distros Linux ล่าสุดที่เพียงพอซึ่งรวมถึงการสนับสนุนการอ่าน / เขียนที่เชื่อถือได้สำหรับ NTFS


ฉันได้ทำการแก้ไขตัวเลือกเหล่านี้ใน udf ครู่หนึ่งแล้วและเพิ่มไปยัง ext [234] อยู่ในรายการสิ่งที่ต้องทำของฉันมาระยะหนึ่งแล้ว ดูเหมือนว่าโง่ที่คุณสามารถทำสิ่งนี้ได้ด้วย udf และแม็คสามารถทำได้ด้วย hfsplus ของพวกเขา แต่ linux ยังไม่สามารถใช้ fs ที่ต้องการได้
psusi

3
UDF จริง ๆ แล้วมีการอนุญาตให้โพสต์ หากคุณไม่ได้ระบุตัวเลือก uid / gid จะเก็บความเป็นเจ้าของและการอนุญาตเช่น ext [234] หรือ posix fs อื่น ๆ หากคุณระบุ id ค่าเริ่มต้นคือการแปล id นั้นเป็น -1 เมื่อเขียนไปยังแผ่นดิสก์และแปล -1 เป็น id นั้นเมื่ออ่านจากแผ่นดิสก์ สิ่งนี้ทำให้ผู้ใช้ปกติสามารถย้ายไฟล์ระหว่างระบบที่มีรหัสแตกต่างกันได้ง่าย ไม่กี่ปีหลังฉันเพิ่ม "ละเว้น" เป็นค่าที่จะใช้ ID เสมอไม่ใช่เฉพาะเมื่อมันอยู่ที่ -1 บนดิสก์และ "ลืม" จะเขียน -1 ลงในดิสก์เสมอไม่ว่าเจ้าของนั้นจะตรงกับรหัสเริ่มต้นหรือไม่ก็ตาม
psusi

ฉันสงสัยว่าเหตุผลที่พวกเขาอนุญาตให้ทำเช่นนี้สำหรับ UDF คือปกติแล้ว UDF จะใช้กับ CD-RW และ DVD ที่ทำให้มันเป็นระบบไฟล์ "มือถือ" ดังนั้นการใช้สิทธิ์การเป็นเจ้าของที่ขาดหายไปจะเป็นความต้องการทั่วไป นอกจากนี้อาจเป็นเรื่องยากที่จะเห็นระบบไฟล์ UDF ที่มีสิทธิ์ผู้ใช้และกลุ่ม ฉันยังคิดว่าการเพิ่มตัวเลือกดังกล่าวใน ext4 จะเป็นช่องโหว่ความปลอดภัย แต่ถ้ามันไม่สำคัญสำหรับคุณบางที UDF อาจเป็นทางเลือกที่ดีสำหรับ ext4 ในกรณีนี้
Warren Young

ดังนั้น UDF จึงเป็นโซลูชันที่ยอดเยี่ยมสำหรับอุปกรณ์ที่จะใช้ในระบบปฏิบัติการต่าง ๆ แทน vfat
Marc

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