如何测试已挂载的共享是否仍可运行

如何测试已挂载的共享是否仍可运行

我有一组带有 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

我希望它有帮助。

相关内容