我有一堆CIFS坐骑的问题,看起来像这样:
//192.168.10.2/remote-share /home/windows-shared/remote-share cifs defaults,user=xxx,password=xxx,uid=603,gid=603 0 0
这个问题会在一段时间后出现,通常在用户在早上启动机器的一天之后,他们的共享不再远程工作。
所以当我尝试做一个ls
我得到这个:
ls: cannot access /home/windows-shared/remote-share: Host is down
我在dmesg
没有任何相关的东西。 这个问题是,现在任何阅读调用这个系统的部分只是挂起一个解决scheme,我宁愿有一个更快的错误,而不是无限期地挂起。
读了一下mount.cifs
的man页面之后,默认情况下每个mount都是soft
,这意味着它最终会超时。 问题是超时需要太长的时间。
更新:
将这些参数添加到mount命令中也没有帮助:
soft,timeo=300,retrans=3
我会强烈build议AutoFS。
这将在后台dynamic挂载和卸载networking共享,对用户来说都是透明的。 我以前在卸下和重新安装移动设备之前都有问题,直到我进行了切换。
不幸的是,有太多的指南让autofs设置过于复杂。 假设你在一个Ubuntu的盒子上,下面是设置它的简单说明。
这里有一些非常简单的说明:
sudo apt-get install autofs -y
/etc/auto.master
所有内容,并replace为: /- /etc/auto.cifs --timeout=20 --ghost
/mnt/LOCAL/MOUNT/PATH -fstype=cifs,rw,noperm,credentials=/etc/auto.credentials ://SERVER/MOUNT
/etc/auto.credentials
中添加以下内容: username=USERNAME password=PASSWORD
sudo service autofs restart
。 而已。
在大多数情况下,您至less可以通过执行lam unmount来卸载挂载点: umount -l //server/share
。 也许你可以把它放到一个挂起钩子(据我所知,你的机器在晚上暂停并运行多天?)