我使用安装了四台服务器(3 via cifs
,1 via sshfs
)autofs
。
auto.master
/- /etc/auto.all --timeout=60 --ghost
auto.all
/mnt \
/server1 -fstype=cifs,rw,credentials=/etc/.smbcredentials.txt,uid=1000,file_mode=0775,dir_mode=0775,users ://server1/ \
/server2/ -fstype=cifs,rw,credentials=/etc/.smbcredentials.txt,uid=1000,file_mode=0775,dir_mode=0775,users ://server2/ \
/server3 -fstype=cifs,rw,credentials=/etc/.smbcredentials.txt,uid=1000,file_mode=0775,dir_mode=0775,users ://server3/ \
/server4 -fstype=fuse,rw,allow_other,uid=1000,users,reconnect,cache=yes,kernel_cache,compression=no,large_read,Ciphers=arcfour :sshfs\#user@server\:/home
````
当我干净启动时一切都很好。我连接到我的网络(使用 VPN)并autofs
安装所有内容。
问题
当网络断开时,例如当我休眠笔记本电脑或连接到不同的网络时,autofs
会导致我的浏览器(海豚)冻结,因为它试图无限加载远程共享。
它变得无响应,甚至不响应 SIGTERM 命令。有时我很幸运,会打电话来sudo service autofs stop
帮助sudo automount
解决问题。然而,通常它仍然保持冻结状态。有时甚至,我的整个扩展坞都会冻结,因为这使得所有应用程序都无法选择。然后我必须完全重新启动..
我已经搜索了几周的时间来寻找如何处理autofs
这种情况的解决方案。在使用之前autofs
,我已经通过安装了所有内容/etc/fstab
,但在每次网络中断后也需要手动重新安装。
我以为autofs
这会对我有所帮助,但它给我带来了更多麻烦。
问题
- 有没有我忽略的一点可以解决冻结问题?
- 有没有一种完全不同的方法可能比 更适合我的情况
autofs
?
PS:我使用的是 Kubuntu 16.04
答案1
您可以添加“软”选项,以便在超过超时时生成错误。默认情况下,您使用的是硬挂载,这意味着...它将保留 nfs 挂载并永远重试。
警告:一旦由于错误(网络超时等)超过超时时间,软挂载将中止任何 I/O,如果缓存中有某些内容未写入 nfs 挂载,则您可能会丢失它。