我有一个运行我的应用程序的 Linux 服务器,在这个应用程序中,用户可以在另一台服务器上存储文件。
当服务器开始挂载与存储服务器上的文件夹的链接时,一段时间内一切都正常。但现在,我几乎每天都要重新启动服务器,因为链接丢失了。
你有什么建议可以检查文件夹是否已挂载,如果未挂载则挂载它吗?为什么现在丢失了挂载,我不明白。
提前致谢
答案1
你使用的挂载方法是什么?我,我在 /etc/fstab 中声明了一个 webdav 服务器,因此为了检查它是否已挂载,我必须读取 /etc/mtab
(此处有一些文档:
https://en.wikipedia.org/wiki/Fstab
https://en.wikipedia.org/wiki/Mtab)
在脚本中它可能是这样的(我的服务器叫做 owncloud):
#!/bin/bash
ismounted=$(cat /etc/mtab | grep owncloud )
if [ -z "${ismounted}" ]; then
echo "not mounted!!"
mount "owncloud"
else
echo "server mounted!"
fi
我所做的是检查是否在 mtab 中找到有关我的服务器的一些条目,如果条目为空,则只需挂载它。(我添加了 echo 命令以获取更多信息)
您可以每隔 x 分钟/秒等自动执行此脚本,或者在启动时使用守护进程(如 cronnie)执行。
我发现其他人使用不同的方法,如下所示https://unix.stackexchange.com/questions/38870/how-to-check-if-a-filesystem-is-mounted-with-a-script
希望它有帮助。干杯!