我有一台 OpenSolaris 服务器 (snv_101b),通过 NFS 提供文件服务。在 ESXi 或 OS X 上挂载共享时一切正常,但从 Linux (CentOS 5.2) 挂载时,所有内容都以 nobody:nobody 的形式挂载,权限为 755。这意味着用户无法进行任何更改。如何正确挂载共享?
该目录与以下对象共享:
# zfs set sharenfs=on /tank/share
并安装有:
# mount -t nfs4 server:/tank/share /mountpoint
答案1
NFSv4 执行 user@DOMAIN 查找(而不是像 NFSv3 那样执行简单的 UID/GID 强制执行),因此您需要在两个系统上拥有相同的身份验证数据库(文件、LDAP 等)。使用 v3,您只需要拥有与文件相同的 UID/GID...不一定是相同的用户名。如果您不需要 v4 的任何功能,我建议在 Linux 上使用 v3。从历史上看,Linux 的 v4 实现相当不稳定。
答案2
您在客户端运行的是哪个版本的 NFS?CentOS 5.2 是否已支持 NFSv4?许多发行版都支持 NFSv3。
答案3
如果在客户端运行 CentOS 5.2 或 RHEL,请小心。有一个 kernel/nfs-utils 错误会导致系统挂起。