/etc/fstab
/etc/fstab คือไฟล์ที่บอก Linux ว่าต้องเมานต์ระบบไฟล์ใดบ้างที่จุดไหนและด้วยตัวเลือกใดในขณะบูต แต่ละบรรทัดจะอธิบายระบบไฟล์หรือพื้นที่ swap หนึ่งรายการ บรรทัดที่ผิดพลาดอาจทำให้ระบบไม่สามารถบูตได้ตามปกติ ดังนั้นควรทดสอบการเปลี่ยนแปลงก่อนทำการรีบูต
1ฟิลด์ทั้งหก
แต่ละบรรทัดมีหกฟิลด์ ได้แก่ อุปกรณ์ (ตัวอย่างเช่น UUID=...), จุดเมานต์, ประเภทของระบบไฟล์ (ext4, xfs, vfat, swap), ตัวเลือกการเมานต์ (ตัวอย่างเช่น defaults, noatime, nofail), ฟิลด์ dump (ปกติคือ 0) และลำดับการ fsck (1 สำหรับระบบไฟล์ root, 2 สำหรับระบบไฟล์อื่น, 0 เพื่อข้ามการตรวจสอบ)
2เหตุผลที่ใช้ UUID
ชื่ออุปกรณ์เช่น /dev/sdb1 อาจเปลี่ยนแปลงได้เมื่อมีการเพิ่มหรือจัดลำดับดิสก์ใหม่ UUID หรือ LABEL จะระบุตัวระบบไฟล์เองเพื่อให้เมานต์ได้ถูกต้อง คำสั่ง blkid หรือ lsblk -f จะแสดงค่า UUID
3nofail และ systemd
ด้วย systemd บรรทัดใน fstab จะถูกเปลี่ยนเป็นหน่วยการเมานต์ (mount units) ในขณะบูต ตัวเลือก 'nofail' ช่วยให้การบูตดำเนินต่อไปได้หากดิสก์ที่ไม่สำคัญ เช่น ไดรฟ์ USB หายไป
วิธีการเพิ่มและทดสอบรายการ fstab
- ค้นหา UUID ของระบบไฟล์:
lsblk -f - สร้างจุดเมานต์ ตัวอย่างเช่น:
sudo mkdir -p /mnt/data - สำรองไฟล์:
sudo cp /etc/fstab /etc/fstab.bak - เพิ่มบรรทัดเช่น: UUID=<uuid>
/mnt/dataext4 defaults,nofail 0 2 - ตรวจสอบไฟล์:
sudo findmnt --verify - เมานต์ทุกอย่างที่ระบุไว้โดยไม่ต้องรีบูต:
sudo mount -a
ข้อควรระวัง
- ข้อผิดพลาดในบรรทัด root หรือ
/bootอาจทำให้ระบบเริ่มทำงานในโหมดฉุกเฉิน (emergency mode) - เก็บสำเนาของไฟล์ที่ใช้งานได้ไว้และทดสอบด้วย mount -a ก่อนทำการรีบูต
บทความที่เกี่ยวข้อง
- lsblk และอุปกรณ์บล็อกวิธีแสดงรายการดิสก์และพาร์ทิชันด้วย lsblk การอ่านขนาด ระบบไฟล์ และจุดเชื่อมต่อ (mount point) รวมถึงวิธีระบุตำแหน่งดิสก์ใหม่ได้อย่างปลอดภัย
- พื้นที่ Swap บน LinuxSwap คืออะไร วิธีตรวจสอบด้วยคำสั่ง free และ swapon วิธีเพิ่มไฟล์ swap และการเปลี่ยนแปลงของ vm.swappiness
- df (disk free)วิธีอ่านผลลัพธ์จากคำสั่ง df, เหตุผลที่ Use% อาจถึง 100% ก่อนที่ Avail จะเป็นศูนย์สำหรับผู้ใช้ทั่วไป และวิธีตรวจสอบ inode ด้วย df -i
แหล่งอ้างอิง
- หน้าคู่มือ fstab(5) man7.org
- หน้าคู่มือ findmnt(8) man7.org
ตรวจสอบล่าสุด: