作为启动的一部分,rescuecd 使用 busybox 挂载带有数据的 nfs 共享,但在挂载 nfs 共享期间,busybox(来自 systemrescuecd 的版本 v1.18.2)始终失败挂载 nfs 共享。我找不到原因,因为使用替代方案时它可以工作
mount -o intr,nolock,rsize=1024,wsize=1024 192.168.0.3:/rescue /boot
mount: mounting 192.168.0.3:/rescue on /boot failed: Connection timeout
# On the serverside
>> authenticated mount request from 192.168.0.69:642 for /rescue
但神秘之处来了,当我在同一个 busybox 命令行上使用以下命令时,nfs 挂载起作用了(并且服务器消息确实不是出现)。
mount.nfs 192.168.0.3:/rescue /boot -o intr,nolock,rsize=1024,wsize=1024
# This works and it is mounted.
有什么区别,我可以让“正常”挂载在 busybox 上工作(这是 busybox 的符号链接)
否则我必须修改 systemrescuecd 才能使其工作。但也许有一个 nfs 服务器调整只是为了接受 busybox 尝试完成的任何任务。
编辑:发现挂载命令成功,当“TCP”添加了选项。
mount -o intr,nolock,rsize=1024,wsize=1024,tcp 192.168.0.3:/rescue /boot
所以现在的问题是,为什么使用“udp”选项挂载会失败
mount -o intr,nolock,rsize=1024,wsize=1024,udp 192.168.0.3:/rescue /boot
我在这里迷路了。
答案1
您必须启用 nfs 服务器来侦听 udp 端口。这是选项-u
(另请参见man nfsd
:)。