我有一台服务器 A,它配置为从服务器 B 自动挂载 NFS 路径,使用 /etc/fstab 中的以下条目:
serverB:/data/media/serverA /data/media nfs defaults 0 0
在长时间断电(是的,我的 UPS 可以使用大约 30 分钟)或两台机器大约同时重新启动的电源循环期间,我注意到当服务器 A 启动而服务器 B 仍处于离线状态时,此路径有时不会自动安装。
我编写了一个简单的脚本,在服务器 B 联机后在服务器 A 上手动运行,这将修复挂载问题,但有没有更好的方法呢?我觉得有些流程应该能够自动处理这种情况,而不需要我进行一些自定义黑客攻击。
/etc/fstab 中的条目是否不能处理这种情况,还是我配置错误?
答案1
我可能会将“默认”更改为“soft,intr,rw,bg”之类的内容。bg 尤其重要,因为它表示如果挂载失败,则在后台重试(相当多)次,直到挂载成功。
答案2
man mount
并查看_netdev
选项。您可能应该使用它来延迟安装,直到网络启动:
serverB:/data/media/serverA /data/media nfs _netdev,rw,... 0 0
答案3
在这种情况下,我会考虑使用 autofs 或其他自动挂载程序。使用此工具,文件系统将按需挂载,而不是在启动时挂载。由于服务器在启动时不可用而导致的故障是暂时的。当您在服务器准备就绪后访问挂载点时,文件系统将被挂载。