NFS는 MacOS 10.12에서 폴더를 내보내고 Centos 6에 마운트했습니다.
UID와 GID는 컴퓨터 간에 동일하지만 Linux 컴퓨터에서는 디렉터리에 "모든 사람을 위한 쓰기" 권한이 설정되어 있지 않으면 파일을 삭제할 수 없습니다.
왜 안 돼?
닫힌 폴더의 권한을 777로 변경한 후 파일을 삭제할 수 있습니다.
맥에서
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$ 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
그런 다음 이 파일이 귀하 또는 귀하의 그룹에 속하는지 확인하십시오.
즐기다.