我从 MacOS 10.12 NFS 导出一个文件夹并将其挂载到 Centos 6 上。
机器之间的 UID 和 GID 是相同的,但从 Linux 机器上我无法删除文件,除非目录设置了“写入所有人”权限。
为什么不?
将封闭文件夹的权限更改为 777 后可以删除文件
在 Mac 端
mac$ ls -lnd
drwxrwxr-x 143 501 501 4862 28 Mar 09:21 ./
mac$ ls -ln *debug*
lrwxrwxrwx 1 501 501 15 22 Mar 16:45 libdvdebug.so@ -> libdvdebug.so.6
lrwxrwxrwx 1 501 501 20 22 Mar 16:45 libdvdebug.so.6@ -> libdvdebug.so.6.0-34
-rwxrwxr-x 1 501 501 7042 22 Mar 16:45 libdvdebug.so.6.0-34*
mac$ id
uid=501(danny) gid=501(djw) groups=501(djw),104(com.apple.access_ssh-disabled),701(com.apple.sharepoint.group.1),502(access_bpf),12(everyone),
20(staff),61(localaccounts),66(_uucp),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),506(finance),33(_appstore),100(_lpoperator),204(_developer),
395(com.apple.access_ftp),398(com.apple.access_screensharing)
$ grep 168.2 /etc/exports
/Work/Software_Devel -alldirs -maproot=danny -network 192.168.2.0 -mask 255.255.255.0
在 Linux 端
linux$ ls -ln *debug*
lrwxrwxrwx 1 501 501 15 Mar 22 16:45 libdvdebug.so -> libdvdebug.so.6
lrwxrwxrwx 1 501 501 20 Mar 22 16:45 libdvdebug.so.6 -> libdvdebug.so.6.0-34
-rwxrwxr-x 1 501 501 7042 Mar 22 16:45 libdvdebug.so.6.0-34
linux$ id
uid=501(tqdevel) gid=501(tqdevel) groups=501(tqdevel)
linux$ ls -ldn .
drwxrwxr-x 143 501 501 4862 Mar 28 09:21 .
linux$ mount
192.168.2.10:/Work/Software_Devel on /mnt/swdevel type nfs
(rw,rsize=8192,wsize=8192,timeo=14,intr,addr=192.168.2.10)
# showmount -e 192.168.2.10
Export list for 192.168.2.10:
/Work/Video Project 192.168.245.0
/Work/Software_Devel 10.0.0.0,10.128.112.0,10.128.113.0,172.16.16.0,192.168.135.224,
192.168.15.0,192.168.2.0,192.168.245.0,192.168.87.0,192.168.9.0
答案1
没有指示,但尝试重置 ACL 权限。
答案2
尝试
$ ls -l
$ whoami
$ groups
然后检查这些文件是否属于您或您的组。
享受。