NFS 사용자 ID 매핑은 일부 uid에서만 작동합니다.

NFS 사용자 ID 매핑은 일부 uid에서만 작동합니다.

Synology NAS에서 NFS 액세스를 설정하려고 합니다. 역사적인 이유로 클라이언트와 서버의 uid가 일치하지 않습니다. 나는 NFSv4를 사용하면 idmap 사용 방법을 이해하는 대가로 이 문제를 우아하게 해결할 수 있다는 것을 이해했습니다(그러나 작동하지 않는 것 같습니다).저것Synology NAS에서는 다음과 같습니다.마운트-synology-nfsv4-내보내기-id-매핑).

어쨌든 나는 suprjami가 제안한 솔루션에 충분히 만족했습니다.사용자 ID 매핑-nfs-on-synology-nas(그리고 웹에서 동일한 기술을 설명하는 다른 여러 곳을 찾았습니다.) 이는 all_squash 옵션을 사용하여 클라이언트의 모든 사용자를 서버의 특정 사용자에게 매핑하는 것으로 구성됩니다. NAS의 그래픽 사용자 인터페이스가 제공하는 유일한 가능성은 uid=1024인 admin이라는 사용자에게 매핑하는 것입니다.

이것은 잘 작동합니다:

NAS-192.168.0.2 # cat /etc/exports
/volume1/photo  192.168.0.10(rw,async,no_wdelay,all_squash,insecure_locks,sec=sys,anonuid=1024,anongid=100)

IP 192.168.0.10을 사용하는 클라이언트 노트북에서:

laptop-192.168.0.10 # mount 192.168.0.2:/volume1/photo /mnt/nas
laptop-192.168.0.10 # ls -l /mnt
drwxrwxrwx  5 root root 4096 juin  22 17:08 nas

/mnt/nas에 있는 파일을 나열하고 읽고 쓸 수 있으며 예상대로 모든 것이 사용자 1024에게 부여됩니다.

이제 내 문제: 관리자가 아니라 NAS에서 확인할 수 있는 사용자 ID 1026을 가진 NAS의 로컬 사용자에게 매핑하고 싶습니다.

NAS-192.168.0.2 # id infisxc
uid=1026(infisxc) gid=100(users) groups=100(users)

따라서 서버의 /etc/exports에서 anonuid 값을 간단히 변경합니다.

NAS-192.168.0.2 # cat /etc/exports
/volume1/photo  192.168.0.10(rw,async,no_wdelay,all_squash,insecure_locks,sec=sys,anonuid=1026,anongid=100)
NAS-192.168.0.2 # exportfs -ra

이제 클라이언트 측에서는 마운트가 계속 성공하지만 권한이 전혀 없습니다.

laptop-192.168.0.10 # mount 192.168.0.2:/volume1/photo /mnt/nas
laptop-192.168.0.10 # ls -l /mnt
d---------  5 root root 4096 juin  22 17:08 nas

그리고 당연히 폴더의 내용을 나열할 수 없습니다.

제가 보기에는 제가 잘 지내고 있는 것 같지만 뭔가를 잊고 있는 것 같습니다. 어떤 조언이라도 환영합니다.

완료하기 위해 DSM 6.1.2-15132가 포함된 Synology의 DS414j NAS가 있습니다.

관련 정보