在需要时自动安装网络驱动器,并在一段时间不活动后再次卸载它

在需要时自动安装网络驱动器,并在一段时间不活动后再次卸载它

我有一个有点旧的 NAS 来托管我的音乐收藏。它无法运行 DAAP 媒体服务器,因此我将音乐文件夹安装在 Sheevaplug(运行 Debian 的小型无头服务器)上,然后运行 ​​DAAP 媒体服务器。

它工作得很好,但问题是挂载 samba 共享会阻止 NAS 在没有活动时进入休眠状态。如果我手动卸载共享,NAS 将在一段时间后休眠。

因此,我正在寻找一种在需要时(即访问)自动安装网络驱动器并在一段时间不活动后再次卸载它的方法。

我尝试inotifywait监视挂载点中的读取访问,但不幸的是,这无法捕获未找到的文件的读取,这是当 DAAP 服务器尝试在空文件夹中传输音乐文件时发生的情况。

然后我用谷歌搜索了更多,发现autofs这似乎能够完全满足我的需要。但不幸的是,即使读完之后像这样指导,还是没明白怎么用。

编辑:

我对 Debian 和 Gentoo 之间的细微差别感到困惑。在 Gentoo 中,配置文件是 /etc/autofs/auto.misc,而 Debian 使用 /etc/auto.misc 等等。

针对这些细微的差异进行调整后,autofs 可以完美地工作。它会在需要时挂载 samba 共享,并在 auto.master 中指定的超时期限后再次卸载它。

答案1

使用 autofs 非常简单。

在文件中/etc/auto.master指定部分配置。每个部分都有一个指定的目录,已配置的挂载将安装到该目录中。

例如,在我的配置中,我有:

/nfs /etc/auto.nfs

这意味着,无论配置什么,/etc/auto.nfs都将安装到该/nfs目录中。

现在,在单独的配置文件中,您可以直接指定安装。

再次在我的配置中,我有:

storage -rw,soft,intr,rsize=8192,noatime,async 192.168.0.50:/storage

含义:storage/nfs其中创建一个子目录,该子目录将作为 nfs 挂载192.168.0.50:/storage。这些选项在中间指定,它们是相同的,您可以在 中指定/etc/fstab

相关内容