systemd: ฉันจะติดตั้งระบบไฟล์ USB โดยอัตโนมัติโดยใช้ / etc / fstab ได้อย่างไร


14

ฉันต้องการให้ระบบไฟล์ USB ของฉันติดตั้งอัตโนมัติเมื่อฉันเชื่อมต่ออุปกรณ์

ฉันจะตั้งค่า automount ด้วยsystemdผ่านได้/etc/fstabอย่างไร

คำตอบ:


15

เชื่อมต่ออุปกรณ์ของคุณและหา UUID ของระบบแฟ้มโดยการทำงานอย่างใดอย่างหนึ่งหรือblkidlsblk -f

เพิ่มบรรทัดใน/etc/fstabเช่น:

UUID=05C5-A73A  /mnt/32GBkey  vfat  noauto,nofail,x-systemd.automount,x-systemd.idle-timeout=2,x-systemd.device-timeout=2

จากนั้นดำเนินการ:

systemctl daemon-reload && systemctl restart local-fs.target

คำอธิบาย:

  • noauto - อย่าเมาด้วย mount -a
  • nofail - บูตจะดำเนินต่อไปแม้ว่าจุดเชื่อมต่อนี้จะไม่ได้ติดตั้งสำเร็จ
  • x-systemd.automountบอกsystemdให้ติดตั้ง etnry นี้โดยอัตโนมัติ
  • x-systemd.idle-timeout=2 - รอ 2 วินาทีก่อนที่จะยกเลิกการต่อเชื่อมอุปกรณ์หลังจากการใช้งานครั้งล่าสุด
  • x-systemd.device-timeout=2- รอเพียง 2 วินาทีก่อนที่จะให้No such deviceหากไม่ได้เชื่อมต่ออุปกรณ์

บันทึก:

  1. ไม่มีเครื่องหมายคำพูดล้อมรอบUUIDตัวเลข
  2. ไดเรกทอรีจุดเมานต์ไม่จำเป็นต้องมีอยู่ - มันจะถูกสร้างขึ้น

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวเลือกที่มีให้ดูsystemd.mount (5)


2
มีข้อได้เปรียบเหนือudevกฎนี้หรือไม่? สิ่งนี้ดูเหมือนจะเฉพาะเจาะจงมากสำหรับอุปกรณ์เดียว (ตามที่UUID- พึ่งพาfstab) ซึ่งudevกฎสามารถครอบคลุมได้เช่น USB แฟลชไดรฟ์ใด ๆ
Fiximan

/etc/fstabไม่ได้มีการพึ่งพาที่คุณยืนยันการยอมรับLABEL=..., และดีเก่าPARTLABEL=... /dev/usbkeyคุณสามารถตั้งค่าudevกฎได้ตลอดเวลา/dev/usbkeyแต่ฉันไม่รู้วิธีติดตั้งโดยใช้udevคนเดียว
Tom Hale

อัปเดต 2019: ฉันทดสอบวิธีนี้บนเดเบียน 9.9 และพบว่าใช้งานได้ดี โปรดทราบว่าเนื่องจากนี่เป็นระบบอัตโนมัติdfอาจไม่แสดงระบบไฟล์ว่าถูกเมานท์
Jonathan Ben-Avraham
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.