我有一个有点旧的 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
。