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/

root は 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失うUIDbrianadminグループ。(sudo id正確な値が表示されます。)

以前のNFSバージョン(v3以前)では、すべてのセキュリティチェックをクライアント側でのみ実行していたため、不正なクライアントから保護するための安全策が組み込まれています。クライアントがUIDが0であると言った場合、ないルート権限を取得する –代わりに、NFS サーバーはあなたをユーザーとして認識しますnobody

/etc/exportsこの保護を無効にするには、オプションが含まれるようにサーバーを編集しno_root_squashexportfs -raすべてのクライアントで共有を再実行して再マウントします。


NFS 権限をテストする場合、共有上に誰でも書き込み可能なディレクトリがあると便利です。たとえば、Ubuntu では、 ですsudo mkdir /home/temp; sudo chmod a+rwx /home/temp。その後、OS X で を実行して、新しく作成されたファイルの所有者を即座に確認できますsudo touch /Volumes/home/temp/testfile

関連情報