配置 NFS 后不接受 SSH 连接?

配置 NFS 后不接受 SSH 连接?

我在 Amazon EC2 的 VPC 中有几台服务器。其中一台充当 NFS 服务器,另一台充当客户端。

我最近注意到客户端存在一个问题,重新启动后,它会拒绝所有 SSH 连接,大概是因为 SSH 没有运行。将 EBS 卷传输到另一个实例并查看内部后,我注释掉了 NFS 行/etc/fstab并尝试将其连接回服务器并启动它。你瞧,我能够通过 SSH 连接了。

我的 fstab 中的以下行似乎破坏了启动时的所有内容:

10.0.0.1:/export/share /mnt/shared nfs auto 0 0

为什么这会导致 SSH 无法启动?如何让 NFS 在启动时自动挂载而不破坏系统上的网络/SSH?

我已经检查过它sudo mount -a工作正常,因此 fstab 命令似乎不存在固有问题。出了什么问题以及如何修复它?

答案1

安装的时候需要多加一个选项nfs,我们都是用这个

例子

10.0.0.1:/export/share /mnt/shared nfs _netdev,noatime,intr,auto 0 0

这些是挂载选项:“noatime”提高了访问速率,“auto”告诉 Rpi 在启动时挂载 NFS 共享。

man mount

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

答案2

尝试使用nobootwaitnofail作为 fstab 中的挂载选项。

答案3

安装在远程服务器上的 nfs 共享存在同样的问题。 nfs 正在通过 openvpn。

我尝试了很多东西,但没有任何效果,包括上面的提示。 fstab 中的选项_netdev,ro,noauto,nofail,x-systemd.automount,x-systemd.requires=openvpn.service,x-systemd.device-timeout=30 0 0不起作用。

rc3.d我尝试了不同的服务顺序...

我发现的唯一非常肮脏的解决方案是在 fstab 中使用_netdev,ro,noauto,nofail 0 0选项,以确保它忽略那些 nfs 共享(如果它们在启动时未正确安装),并添加一行来rc.local安装共享,例如mount 192.168.0.1:/myshare

相关内容