root无法访问通过NFS共享的用户的主文件夹

我们有一个本地服务器,用于导出一个NFS共享,用作networking中Linux主文件夹的父目录。 用户通过LDAP身份validation(在同一台服务器上运行)。

validation工作正常,共享上的主文件夹在用户login到客户机之后也能很好地工作。

但是,有一个问题:客户端上的root用户无法访问用户文件夹。 这是一个问题,因为即使是简单的东西,如sudo apt-get产生的错误,因为root不能写入用户的文件夹。

我以为问题可能是在NFS服务器上的主文件夹权限是0700,因此只能由用户自己访问。 所以我已经将这个权限更改为0770,也将服务器上的用户文件夹的组所有权设置为0,即根。 我认为这应该工作,因为0也是客户机上的根组ID。

不幸的是,那并没有解决我的问题,root仍然无法访问用户的文件夹:

 root@Mule:/home/users# ll total 28 drwxr-xr-x 7 team team 4096 Aug 20 14:18 ./ drwxr-xr-x 3 root root 4096 Oct 29 10:43 ../ drwxrwx--- 30 mfb root 4096 Jan 30 17:49 mfb/ root@Mule:/home/users# root@Mule:/home/users# cd mfb bash: cd: mfb: Permission denied root@Mule:/home/users# root@Mule:/home/users# ll mfb ls: cannot open directory mfb: Permission denied root@Mule:/home/users# root@Mule:/home/users# whoami root root@Mule:/home/users# root@Mule:/home/users# mount | grep users bison:/media/profiles on /home/users type nfs (rw,hard,intr,addr=192.168.0.2) root@Mule:/home/users# 

我在这里没有想法。 任何build议如何让root用户访问客户端上的用户主文件夹(本例中为mfb )?

出口手册页:

通常情况下,在访问NFS服务器上的文件时,客户机上的root用户也被视为root。 为此,uid 0通常被映射到一个不同的id:所谓的anonymous或nobody uid。 这种操作模式(称为“root squashing”)是默认的,可以用no_root_squashclosures。

您需要检查如何导出NFS挂载。 可能“root_squash”已启用。

从文档:root_squash – 防止远程连接的root用户具有root权限,并为用户nfsnobody分配用户ID。

no_root_squash选项closuresroot压缩

更多信息: http : //www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-nfs-server-config-exports.html

您需要在导出上设置no_root_squash 。 否则,根用户的访问被映射到匿名用户(通常是没有人)。