chown:改变`。'的所有权:无效的参数

我试图在我们的系统pipe理员在假期时在我们的新服务器上安装一些新文件:

这是我的df

 # df -h Filesystem Size Used Avail Use% Mounted on /dev/sdb3 273G 11G 248G 5% / tmpfs 48G 260K 48G 1% /dev/shm /dev/sdb1 485M 187M 273M 41% /boot xxx.xx.xxx.xxx:/commun 63T 2.2T 61T 4% /commun 

作为root用户 ,我可以创build一个新的目录并在/ home / lindenb下运行chown

 # cd /home/lindenb/ # mkdir X # chown lindenb X 

但是我不能在/ commun下运行相同的命令

 # cd /commun/data/users/lindenb/ # mkdir X # chown lindenb X chown: changing ownership of `X': Invalid argument 

为什么? 我怎样才能解决这个问题?

更新

安装:

 /dev/sdb3 on / type ext4 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw) /dev/sdb1 on /boot type ext4 (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) xxx.xx.xxx.xxx:/commun on /commun type nfs (rw,noatime,noac,hard,intr,vers=4,addr=xxx.xx.xxx.xxx,clientaddr=xxx.xx.xxx.xxx) 

版:

 $ cat /etc/redhat-release CentOS release 6.3 (Final) 

/commun文件系统从远程服务器挂载,并且错误消息提示可能是nfsv4挂载(对于较早的nfs版本,挂载的是“权限被拒绝”)。 默认情况下,远程文件服务器将远程root用户映射到一个nobody帐户,所以它不能更改文件的所有权。

最简单的解决scheme可能是使用本地lindenb帐户创build/commun目录下的目录。 所以作为根

 sudo -u linedb mkdir -p /commun/data/users/lindenb 

如果这样做不起作用,那么可能会发生一些id映射,因此您可能必须将xxx.xx.xxx.xxx服务器上的目录xxx.xx.xxx.xxx并在那里更改所有权/许可权。

 mount -t nfs -o vers=3 SERVER:PATH MOUNT_PATH 

这对我有效。

这确实是一个NFS4问题。 您可能必须考虑rpc.idmapd NFS4映射守护进程以解决此类问题,尤其是如果许多用户需要客户端和NFS服务器之间的正确映射。 请注意,NFS3(例如CentOS <6)没有使用映射守护进程。