我们有一台FreeBSD 8服务器,自启动以来一直没有重启。它现在已经重新启动,我们正在尝试将NFS挂载重新连接到它。
$ sudo /etc/rc.d/nfsclient start
NFS access cache time=60
rpc.umntall: not found
错误rpc.umntall: not found
的明显原因是因为该程序在计算机上不存在。
除了使用NFSClient之外,还有其他方法可以挂载到连接到网络的NFS服务器。或者我可以强制客户端移动到需要rpc.umntall
的脚本中的部分吗?
我只是问,因为它之前已经开始,如果我们从中删除任何程序,我会感到非常惊讶。
答案 0 :(得分:1)
rpc.umntall
作为基本系统的一部分安装,通常位于/usr/sbin/
。
如果你看一下/etc/rc.d/nfsclient
的内容,你会发现:
unmount_all()
{
# If /var/db/mounttab exists, some nfs-server has not been
# successfully notified about a previous client shutdown.
# If there is no /var/db/mounttab, we do nothing.
if [ -f /var/db/mounttab ]; then
rpc.umntall -k
fi
}
廉价的解决方法是删除/var/db/mounttab
。
但是,如果您想解决问题,则需要修复丢失的rpc.umntall
。它不在/usr/sbin/
吗?如果没有,您可以尝试从已发布的映像还原它,或者您可以尝试从源代码构建它。
如果它位于计算机上的其他位置,您可以尝试使用find / | grep rcp.umntall
找到它。
如果它存在于/usr/sbin
中,但不起作用,那么这可能意味着您的rc子系统正在使用的PATH
变量出现问题。您可以通过在rpc.umntall
脚本中将/etc/rc.d/nfsclient
的路径硬编码来仔细检查。