我有这个 fstab 条目:
machine.local:/srv/files /res/files nfs defaults 0 0
它工作得很好,直到 machine.local 暂时断开连接。现在,该共享无法访问。df
, umount /res/files
,ls /res
全部永远挂起。
除了重启之外我该怎么办?
答案1
一旦 NFS 服务器备份,NFS 确实应该重新连接。可能需要几分钟(需要注意超时)。该timeo
选项允许您更改超时时间。
umount -f /res/files
如果您尝试几次,可能会卸载共享(并杀死所有等待它的进程)。
在较旧的内核上,如果您使用 挂载了共享intr
,则可以终止等待的进程。在较新的内核(2.6.25+)上,您可以使用kill -9
它们。
NFS 客户端选项记录在nfs(5)
联机帮助页中。
注意:某些版本umount
有漏洞他们在卸载文件系统之前尝试对其进行统计。如果是这样,您将需要一个像这样的简单 C 程序:
#include <sys/mount.h>
int main() {
const char p[] = "/res/files";
umount2(p, MNT_FORCE);
umount2(p, MNT_FORCE);
return 0;
}
答案2
答案3
假设这是一个支持它的系统,您可以尝试强制卸载文件系统,然后重新安装:
umount -f /res/files
mount /res/files