如何在客户端的 /etc/fstab 中通过 UUID 引用 NFS 共享

如何在客户端的 /etc/fstab 中通过 UUID 引用 NFS 共享

我的服务器上有以下 NFS 导出,并fsid设置为新生成的 UUID。

在 /etc/exports 中:

/mnt/data client(ro,fsid=b07f5af6-6b10-11e3-b4c1-00248115724d)

然后我会运行exportfs -rav,它不会返回任何错误,但我不知道如何在客户端上安装它。

如果fsid设置为0root我可以按如下方式安装:

# mount server:/ /mnt/Media

如何在 mount 命令或 /etc/fstab 文件中引用 UUID?

以下操作无效:

server:$uuid
server:/$uuid
server:UUID=$uuid
server:/UUID=$uuid

失败并出现错误:mount.nfs: Operation not permitted

答案1

您想要做的事情并不是 fsid 的真正目的。

fsid 旨在帮助唯一地标识可能没有自己唯一标识符的文件系统,例如集群文件系统。除其他外,这帮助消除由于 NFS 挂载失效而导致的系统挂起通过让您从不同的设备修复并重新导出失败的文件系统,为修复的导出设置相同的 fsid。

如果文件系统已经有 UUID,则默认使用该 UUID。否则,NFS 将使用设备节点的主编号和次编号,这在导出集群文件系统时用处不大。因此,对于这些,您需要明确设置 fsid。

在 NFS 上设置了 fsid服务器,并且当它在线路上使用时,没有必要甚至不可能在客户端设置它;客户端会自行获取它。

相关内容