我有一组带有 samba(和其他)共享驱动器的 Linux 机器。有自动脚本可以挂载这些共享。我的问题是,有时主机会脱机,但我找不到从客户端测试此情况的好方法。
mount
为此,我检查了命令输出,但此后已脱机的挂载仍出现在该输出中。我的下一次尝试是尝试执行ls /media/mount
。这将返回共享中的文件或失败并显示"ls: cannot access /media/mount: Host is down"
错误消息。这很好,只是速度ls
很慢,或者有时只是挂起。我也试过了df
,这确实给了我所需的信息,而不必解析错误,但它仍然很慢,我担心它也可能挂起。
有没有一种方法可以测试共享连接而不会出现缓慢/挂起问题?理想情况下,发出的命令不会出错,从而可以知道是否真的可以读取和写入共享。
答案1
例如,您可以使用:
触摸/root/test>/dev/null 2>&1;回显$?
0
触摸/blablablaroot/test>/dev/null 2>&1;回显$?
1
如果在命令中添加超时时间会更好:
超时 15 touch /blablablaroot/test > /dev/null 2>&1 ; echo $?
1
我希望它有帮助。