/etc/fstab
/etc/fstab 用于告知 Linux 在引导时挂载哪些文件系统、挂载到何处以及使用哪些选项。每行描述一个文件系统或交换分区。错误的配置行可能会导致系统无法正常引导,因此在重启前应当对更改进行测试。
1六个字段
每行包含六个字段:设备(例如 UUID=...)、挂载点、文件系统类型(ext4、xfs、vfat、swap)、挂载选项(例如 defaults、noatime、nofail)、转储字段(通常为 0)以及 fsck 检查顺序(根文件系统为 1,其他文件系统为 2,0 表示跳过检查)。
2为什么使用 UUID
/dev/sdb1 等设备名称可能会在添加或重新排序磁盘时发生变化。UUID 或 LABEL 用于唯一标识文件系统本身,从而确保挂载正确的分区。可以通过 blkid 或 lsblk -f 命令查看 UUID。
3nofail 与 systemd
在使用 systemd 的系统中,fstab 中的行在引导时会转换为挂载单元。'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
注意事项
- 根分区或
/boot分区配置中的错误可能会导致系统进入紧急模式。 - 请保留一份正常工作的备份文件,并在重启前使用 mount -a 进行测试。
相关文章
- lsblk 与块设备如何使用 lsblk 列出磁盘和分区、读取大小、文件系统和挂载点,并安全地识别新磁盘。
- Linux 上的交换空间什么是交换空间、如何使用 free 和 swapon 查看它、如何添加交换文件,以及 vm.swappiness 的更改内容。
- df (磁盘剩余空间)如何读取 df 的输出,为什么普通用户在 Avail 降为零之前 Use% 就可能达到 100%,以及如何使用 df -i 检查 inode。
资料来源
- fstab(5) 手册页 man7.org
- findmnt(8) 手册页 man7.org
最后审核: