关键是在/etc/fstab中使用_netdev和nofail选项,确保挂载点存在、nfs客户端已安装,并配置为192.168.1.100:/data/nfs /mnt/nfs nfs defaults,_netdev,nofail 0 0。

用 /etc/fstab 自动挂载 NFS(网络附加存储)的关键是让系统启动时不因网络未就绪或远程服务不可达而卡在 emergency mode。核心在于正确使用 _netdev 和 nofail 选项,并确保挂载点存在、NFS 客户端已安装。
确认 NFS 客户端已安装
不同发行版命令略有差异,执行前先检查:
- Ubuntu/Debian:sudo apt update && sudo apt install nfs-common
- RHEL/CentOS/Alibaba Cloud Linux:sudo yum install nfs-utils 或 sudo dnf install nfs-utils
未安装会导致 mount -a 报 “unknown filesystem type ‘nfs’” 错误。
获取远程路径并创建本地挂载点
确认 NFS 服务器地址和共享路径(例如 192.168.1.100:/data/nfs),然后创建空目录作为挂载点:
- sudo mkdir -p /mnt/nfs
- 挂载点目录必须存在且为空,不能是已有文件系统的子目录(如避免直接用
/var/www而不确认其归属)
编辑 /etc/fstab 添加 NFS 条目
用 root 权限打开 fstab:sudo nano /etc/fstab,在末尾添加一行:
192.168.1.100:/data/nfs /mnt/nfs nfs defaults,_netdev,nofail 0 0-
第1列:NFS 服务器 IP + 共享路径,格式为
IP:/path,不可写成 UUID 或设备名 - 第2列:本地挂载点(必须已存在)
-
第3列:固定填
nfs(不是 ext4、xfs 等) -
第4列:必含
_netdev(告诉 systemd 等待网络就绪再挂载),加上nofail(即使挂载失败也不中断启动);其他可选参数如vers=4、timeo=14、rsize=8192,wsize=8192可按需补充 -
第5–6列:NFS 不参与 dump 备份和 fsck 检查,统一填
0 0
验证配置并重启
保存 fstab 后,立即测试:
- 运行 sudo mount -a —— 若无输出即成功;若报错,检查 IP 是否可达、共享路径是否拼写正确、防火墙是否放行 NFS 端口(默认 TCP/UDP 2049)
- 手动卸载后验证重挂:sudo umount /mnt/nfs && sudo mount -a
- 确认挂载状态:findmnt /mnt/nfs 或 df -hT | grep nfs
- 确认无误后重启:sudo reboot,启动完成后检查 df -h 是否显示该 NFS 路径










