NFS 挂载/重启失败-竞争条件?

NFS 挂载/重启失败-竞争条件?

我最近遭遇了服务器崩溃(Ubuntu 12.04)并且随后无法重启的惨痛经历。

看起来,操作系统在加载网络之前尝试在 /etc/fstab 文件中挂载 NFS 共享,这意味着操作系统无法在启动周期中越过该点。

我的 fstab 文件是正确的,并且该服务器之前已经重新启动过,所以我只能认为这是一种竞争条件?

有什么方法可以在操作系统启动后挂载 fstab 中的目录,或者至少在启动过程的最后执行此操作?

答案1

一种解决方法是编辑/etc/fstab以使用_netdevmount 选项。摘自 mount 手册页:

_netdev 文件系统驻留在需要网络访问的设备上(用于防止系统在系统上启用网络之前尝试安装这些文件系统)。

其他可能性是使用softintr安装选项。

请注意全部这些选项有其缺点,最大的缺点是它们将完全跳过 NFS 挂载,而无需稍后尝试。

真正的解决方案可能是使用autofs机制,用于按需安装。

或者,至少尝试在启动过程的后期挂载你的 NFS 共享 - 也许使用 rc.local(或类似的)。

相关内容