ใช้ UUID หรือ PARTUUID เพื่อติดตั้ง HDD ด้วย fstab โดยอัตโนมัติดีกว่าไหม

Aug 18 2020

ฉันพยายามที่จะติดตั้งฮาร์ดดิสก์ภายนอกของฉันที่จะติดอัตโนมัติเมื่อเริ่มต้นตามคู่มือขั้ว Akshit ของ

ตอนแรกฉันใช้ PARTUUID ใน `` / etc / fastab 'แทน UUID:

UUID=191486e0-6049-46aa-973c-425d317b629a /mnt/nas exfat uid=1000,gid=1000,umask=0022,auto,rw 0 0

สิ่งนี้ทำให้ฉันเกิดข้อผิดพลาดเมื่อฉันวิ่งไปfindmnt --verify --verboseที่จุดที่ฉันตรวจสอบอีกครั้งblkidและสังเกตว่าฉันใช้ ID พาร์ติชัน:

/dev/sdb1: LABEL="My Book" UUID="20C9-C659" TYPE="exfat" PTTYPE="atari" PARTLABEL="My Book" PARTUUID="191486e0-6049-46aa-973c-425d317b629a"

ดังนั้นฉันจึงเพิ่ม UUID จริงใน fstab แต่ตอนนี้ฉันไม่แน่ใจว่าฉันควรใช้สิ่งนั้นหรือควรใช้ PARTUUID และทำไม UUID ของฉันจึงสั้นกว่าตัวอย่างอื่น ๆ ที่ฉันเคยเห็น ( โดยเฉพาะอย่างยิ่งเมื่อ " UUID ได้รับการรับรองว่าไม่ซ้ำกันเท่าที่ฉันรู้การชนกันจะไม่เกิดขึ้นในช่วงชีวิตของจักรวาล")

คำตอบ

1 Ravexina Aug 19 2020 at 10:57

สิ่งนี้ทำให้ฉันมีข้อผิดพลาดเมื่อฉันเรียกใช้ findmnt --verify --verbose

มีการกล่าวถึงแล้วในคำตอบอื่น ๆ PARTUUID=คุณต้องใช้

ข้อมูลเพิ่มเติม: ฉันจะใช้ PARTUUID ใน fstab ได้อย่างไร

ตอนนี้ฉันไม่แน่ใจว่าควรใช้มันหรือควรใช้ PARTUUID?

ในกรณีของคุณมันไม่สำคัญจริงๆ แต่จำไว้ว่าหากคุณใช้ MBR ซึ่งแตกต่างจาก PARTUUID ทั่วไปของพาร์ติชัน GPT PARTUUID หลอกของ MBR สามารถเปลี่ยนแปลงได้หากหมายเลขพาร์ติชันเปลี่ยนไป [1]

ทำไม UUID ของฉันจึงสั้นกว่าตัวอย่างอื่น ๆ ที่ฉันเคยเห็น?

UUID จริงควรมีความยาว 128 บิตและควรจะไม่ซ้ำกัน ก่อนหน้านี้ระบบต่างๆได้จัดเตรียมซีเรียลนัมเบอร์ขนาดต่างๆไว้ให้สามารถแยกแยะได้ ดังนั้น Linux จึงใช้อนุกรมอะไรก็ได้ที่สามารถค้นหาและติดไว้ในไดเร็กทอรี / dev / by-uuid / แม้ว่าจะไม่ตรงกับนิยาม UUID ก็ตาม [2]


ตามความชอบส่วนตัวฉันค่อนข้างจะใช้ UUID แม้ว่าฉันจะสร้างพาร์ติชัน swap ที่เข้ารหัส นอกจากนี้ยังไม่มี PARTUUID สำหรับสิ่งต่างๆเช่น lvm ในขณะที่คุณอาจจะรู้ว่าfstabย่อมาจากระบบแฟ้มตาราง ดังนั้นฉันเดาว่าควรใช้ UUID ดีกว่าเนื่องจากเกี่ยวข้องกับระบบไฟล์ ใช้ UUID และไม่มีเรื่องน่าประหลาดใจเว้นแต่คุณจะต้องใช้วิธีอื่นด้วยเหตุผลเฉพาะ


ฉันยังพบคำตอบที่ดีในฟอรัมของ ArchLinux ที่ควรค่าแก่การอ่าน: PARTUUID แทนที่จะเป็น UUID ใน fstab ข้อดี / ข้อเสีย? . นี่คือคำพูดบางส่วนจากคำตอบ:

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

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

พาร์ติชันเท่านั้นที่มี PARTUUID คุณไม่มีสำหรับอุปกรณ์บล็อกอื่น ๆ

การติดตั้งโดย PARTUUID ทำงานได้โดยไม่ต้องมี initramfs ดังนั้นจึงเป็นข้อดีหากคุณต้องการสร้างระบบที่ไม่ต้องเริ่มต้น

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

โดยทั่วไปรายการ fstab จะเกี่ยวกับการติดตั้งเนื้อหาที่เฉพาะเจาะจงไปยังตำแหน่งเฉพาะดังนั้นการระบุตามเนื้อหาแทนที่จะเป็นพาร์ติชันจึงเป็นธรรมชาติมากกว่า การใช้ UUID เป็นเรื่องปกติมากขึ้น

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

5 vanadium Aug 18 2020 at 18:36

ถ้าคุณใช้ PARTUID คุณต้องแสดงให้เห็นว่าในfstabโดยเริ่มต้นบรรทัดที่มีมากกว่าPARTUUID= UUIDในตัวอย่างที่คุณให้มาระบบจะค้นหา UUID ไม่ใช่ PARTUID และไม่พบการตัดเฉือน

แทนที่UUID=ด้วยPARTUUID=และคุณควรจะไป

ทั้งสองอย่างUUIDและPARTUUIDตั้งใจให้เป็นตัวระบุที่ไม่ซ้ำกันซึ่งเป็นตัวระบุที่เกี่ยวข้องกับระบบไฟล์ดังนั้นการเปลี่ยนเมื่อคุณฟอร์แมตพาร์ติชันอีกอันหนึ่งเป็นพาร์ติชันเพื่อให้เชื่อมโยงกับพาร์ติชันเอง (จะไม่เปลี่ยนแปลงเมื่อคุณฟอร์แมต) ใช้อันอื่นดีกว่าไหม มันไม่สำคัญมากเกินไป เมื่อคุณติดตั้งไดรฟ์ด้วยตัวคุณเองfstabคุณจะต้องตระหนักให้ดีว่าคุณติดตั้งอะไรและในระดับนั้นไม่สำคัญมากนักว่าคุณจะใช้ตัวระบุที่ไม่ซ้ำกันหรือไม่