centos 6.3 nfs挂载时,目录属主始终为nobody

在centos6.3下搭建了一台nfs服务器,然后用两台centos6.3的客户端挂载。为了保证挂载后,客户端和服务器端目录属主的一致,方便读写,在客户端和服务器端分别添加了www用户,www用户的uid一致,并且共享目录的属主设置为www。但是其中一台挂载后,目录的属主一直是nobody,但是另一台则正常,显示为www。nfs的服务器端对两台客户端的设置是一样的,但是挂载后显示的属主确不同。查找资料发现,在centos 6版本中默认使用的nfs-v4版本,其提供了称为rpc.idmapd 的守护进程,并使用 /etc/idmapd.conf 的配置文件。当请求加载nfsv4 时,该守护进程将处理 UID 和 GID 映射。默认使用nis,没有nis它会自动映射成nobody用户。解决办法如下

(1)在客户端清除idmap的缓存,然后重启rpcidmap,并重新挂载。大部分情况下可以解决

[root@ha1 ~]# nfsidmap -c
[root@ha1 ~]# /etc/init.d/rpcidmapd restart
正在启动 RPC idmapd:                                      [确定]
正在启动 RPC idmapd:                                      [确定]

(2)如果上面的办法没有解决,可以用下面的办法

nfs服务器端,修改/etc/idmapd.conf,给Domain指定一个值,然后重启rpcidmap服务。

[root@ha2 ~]# vi /etc/idmapd.conf
[General]
#Verbosity = 0
# The following should be set to the local NFSv4 domain name
# The default is the host's DNS domain name.
#Domain = local.domain.edu
Domain = mydomain.com
重启服务
[root@ha2 ~]# /etc/init.d/rpcidmapd restart
Shutting down RPC idmapd:                                  [确定]
正在启动 RPC idmapd:                                      [确定]

nfs客户端,同样修改/etc/idmapd.conf,给Domain指定一个值,要与服务器端指定的域名相同,然后重启rpcidmap服务

[root@ha1 ~]# vi /etc/idmapd.conf
[General]
#Verbosity = 0
# The following should be set to the local NFSv4 domain name
# The default is the host's DNS domain name.
#Domain = local.domain.edu
Domain = mydomain.com
重启服务
[root@ha1 ~]# /etc/init.d/rpcidmapd restart
正在启动 RPC idmapd:                                      [确定]
正在启动 RPC idmapd:                                      [确定]

重新挂载后,发现目录属主正常,为www

[root@ha1 ~]# df -h
文件系统              容量  已用  可用 已用%% 挂载点
/dev/sda2             9.9G  2.3G  7.1G  25% /
tmpfs                 244M     0  244M   0% /dev/shm
/dev/sda1             194M   28M  157M  15% /boot
/dev/sda5             8.7G  148M  8.1G   2% /data
192.168.1.109:/data/nfsshare
                       19G  1.2G   17G   7% /mnt
[root@ha1 ~]# ll /mnt/
总用量 0
-rw-rw-r-- 1 www www 0 3月  25 14:15 a
-rw-rw-r-- 1 www www 0 3月  25 15:32 bb


你可能感兴趣的:(centos6,nfs,nobody)