iMac 사용자는 sudo를 사용하여 NFS 마운트 홈 디렉토리에 액세스할 수 없습니다.

iMac 사용자는 sudo를 사용하여 NFS 마운트 홈 디렉토리에 액세스할 수 없습니다.

방금 홈 네트워크에 iMac을 다시 설치하고 NFS 공유(Ubuntu 서버에서 호스팅됨)를 통해 사용자 홈 디렉터리를 마운트했습니다.

내가 가진 문제는 sudo를 사용할 때 내 홈 디렉토리에 대한 권한이 거부된다는 것입니다.

내 UID는 501이고 관리 그룹(GID 80)의 구성원이므로 sudo를 사용할 수 있습니다.

Ubuntu 서버에서 홈 디렉터리를 다음과 같이 구성했습니다.

Ubuntu# ls -ln | grep bryan
drwxrwx--- 35 501 80 4096 2012-01-27 14:09 bryan

Mac에서는 올바르게 번역됩니다.

iMac$ ls -l | grep bryan
drwxrwx---  35 bryan    admin   4.0K 27 Jan 14:09 bryan/

루트도 admin(GID 80)의 구성원이므로 sudo가 내 홈 디렉터리에 대한 액세스를 허용할 것으로 예상했지만 아래에서 볼 수 있듯이 그렇지 않습니다.

iMac$ whoami
bryan
iMac$ sudo bash
bash: /Volumes/home/bryan/.bashrc: Permission denied
iMac# whoami
root
iMac# cd /Volumes/home/bryan/
bash: cd: /Volumes/home/bryan/: Permission denied

dscacheutil -q group확인을 위해 다음은 내 iMac 출력의 관련 부분입니다 .

name: admin
password: *
gid: 80
users: root bryan 

sudo를 사용할 때 iMac의 홈 디렉토리에 대한 액세스를 활성화하려면 어떻게 해야 합니까?

답변1

을 사용하면 사용자(uid 0) sudo로 전환됩니다 .root잃다귀하의 brianUID 및 admin그룹. ( sudo id정확한 값이 표시됩니다.)

이전 NFS 버전(v3 이하)은 클라이언트 측에서만 모든 보안 검사를 수행했기 때문에 부정직한 클라이언트로부터 보호하기 위한 보호 장치가 내장되어 있습니다. 클라이언트가 UID가 0이라고 말하면 이를 수행해야 합니다.~ 아니다루트 권한 받기 –대신 NFS 서버는 사용자를 사용자로 간주합니다 nobody.

/etc/exports이 보호 장치를 비활성화하려면 옵션 이 포함되도록 서버를 편집한 다음 모든 클라이언트에서 공유를 no_root_squash다시 실행 하고 다시 탑재하십시오.exportfs -ra


NFS 권한을 테스트할 때 공유에 누구나 쓰기 가능한 디렉터리를 두는 것이 유용합니다. 예를 들어 우분투에서는 sudo mkdir /home/temp; sudo chmod a+rwx /home/temp. 그런 다음 OS X에서는 sudo touch /Volumes/home/temp/testfile새로 생성된 파일의 소유자를 실행하고 즉시 확인할 수 있습니다.

관련 정보