我正在使用带有 XBMC 的 Ubuntu 12.04,并从我的文件服务器(使用 NFS 安装)流式传输媒体文件。
现在我已将 fstab 配置为挂载我的 NFS 共享,如下所示:
192.168.0.99:/tank/media /mnt/media nfs4 _netdev,auto 0 0
但是,有时 XBMC 启动时挂载点尚未可用(?),因此当我尝试从该挂载点播放文件时,它会冻结(即只是等待,等待……)。要解决此问题,我需要通过 SSH 进入服务器并安装 -a(或者有时我可以等几天分钟它可能会自行修复和/或完成安装。
在这种情况下使用 AutoFS 是否更好?如果不行,还有哪些其他选择?
编辑:我还希望安装能够抵御文件服务器停机或奇怪的网络问题等。
答案1
多年来,我一直使用静态挂载来存储媒体文件,效果很好,因为我们希望它们具有高可用性。但是,我们有一个专用的 HTPC/MediaServer 全天候运行(它也在晚上从台式机上备份)。我认为 AutoFS 似乎比在 fstab 中挂载服务器分区并让它们运行更复杂。我不喜欢打开和关闭硬盘。
我想知道为什么你的挂载会这样?你设置 nfs4 挂载的方式有什么奇怪吗?我想我已经修复了类似的问题‘crossmnt’/etc/exports 条目中的父目录选项。打开父导出文件夹后,子挂载会延迟一段时间。我认为使用顶层 /etc/export 条目上的 crossmnt 选项;子挂载会快速弹出,但我解决这个问题已经有一段时间了。
列出你的 /etc/exports 会有所帮助。
在客户端:
$cat /proc/mounts | grep nfs4
将显示您最终得到的所有客户端 nfs4 挂载选项。
这可能会帮助你nfs - nfs 文件系统的 fstab 格式和选项
bg / fg Determines how the mount(8) command behaves if an
attempt to mount an export fails. The fg option causes
mount(8) to exit with an error status if any part of the
mount request times out or fails outright. This is
called a "foreground" mount, and is the default behavior
if neither the fg nor bg mount option is specified.
If the bg option is specified, a timeout or failure
causes the mount(8) command to fork a child which
continues to attempt to mount the export. The parent
immediately returns with a zero exit code. This is
known as a "background" mount.
If the local mount point directory is missing, the
mount(8) command acts as if the mount request timed out.
This permits nested NFS mounts specified in /etc/fstab
to proceed in any order during system initialization,
even if some NFS servers are not yet available.
Alternatively these issues can be addressed using an
automounter (refer to automount(8) for details).