![NFS:网络断开导致 Gnome Nautilus 挂起/进度条跳动](https://linux22.com/image/1341635/NFS%EF%BC%9A%E7%BD%91%E7%BB%9C%E6%96%AD%E5%BC%80%E5%AF%BC%E8%87%B4%20Gnome%20Nautilus%20%E6%8C%82%E8%B5%B7%2F%E8%BF%9B%E5%BA%A6%E6%9D%A1%E8%B7%B3%E5%8A%A8.png)
我通过 /etc/fstab 挂载 NFSv4 导出,并在 nautilus 中挂载和使用共享文件夹。
有两个问题:
- 当我将一个大文件(大约 4 GB)复制到 NFS 服务器时,进度条会迅速转到 2 GB,然后基本停止移动。但复制仍在进行中 - 只是显示效果不佳
- 当我断开网络而不卸载 nfs 共享时,nautilus 就会冻结。
我该如何解决这个问题?
/etc/export
在服务器上
/export/share 192.168.0.0/24(rw,sync,insecure,no_subtree_check,anonuid=1000,anongid=1000)
/etc/fstab
在客户端上:
server:/share /mnt nfs4 soft,tcp
答案1
我也遇到了第一个问题,但没有人回答。复制过程中,系统的其他部分也容易被锁定(可能是因为 Nautilus 作为 GNOME 服务无处不在)。
关于第二点,我发现这个问题非常有用:https://stackoverflow.com/q/40317/91808。特别是umount -f /mnt/nfs
当其他方法都不起作用时,这个建议对我来说很管用,使我免于烦人的重启。
答案2
我会使用自动挂载。当共享被访问/未被访问时,它会自动挂载/卸载共享。我认为这不会影响进度条问题,但它应该可以解决冻结问题。
看一下我的答案在这里(具体来说,步骤 5-7)以获取有关如何设置的更多信息。
更新
我发现如果共享卷链接到(或直接挂载)我的主目录,文件管理器就会挂起。通过将指向我的挂载点的链接放在子目录$HOME
不再冻结。
问题是autofs
每次访问时都会挂载共享,包括ls
。因此,每次打开 nautilus 并且将挂载链接到或挂载到 $HOME 时,它都会尝试挂载它并挂起。
因此,我当前的(无挂起)设置是:
- NFS 共享挂载在 /mnt/shared/movies
它链接到我的 $HOME 的子目录:
$ ls $HOME | grep shared shared $ ls -l $HOME/shared lrwxrwxrwx 1 terdon terdon 20 Feb 15 2012 movies -> /mnt/shared/movies
这样,仅当我执行ls $HOME/shared
而不是简单的时,才会安装卷ls $HOME
。
最后,确保您使用了 -soft 选项。