GNU/Linux >> Linux の 問題 >  >> Linux

NFS フォルダのアクセス許可を適切に設定するには?マウント側で許可が拒否されました。

解決策 1:

NFS は RPC 認証の上に構築されています。 NFS バージョン 3 では、最も一般的な認証メカニズムは AUTH_UNIX です。クライアント システムのユーザー ID とグループ ID が各 RPC 呼び出しで送信され、アクセス中のファイルに対してこれらの ID が持つアクセス許可がサーバーでチェックされます。これが機能するには、UID と GID がサーバーとクライアントで同じである必要があります。ただし、all_squash、anonuid、および anongid エクスポート オプションを組み合わせることで、すべてのアクセスを単一のユーザーおよびグループとして強制的に発生させることができます。 all_squash すべての UID と GID を匿名ユーザーにマップし、anonuidanongid 匿名ユーザーの UID と GID を設定します。たとえば、開発サーバーの UID と GID が両方とも 1001 の場合、次のような行でホーム ディレクトリをエクスポートできます

/home/darren 192.168.1.1/24(rw,all_squash,anonuid=1001,anongid=1001)

NFS バージョン 4 にはあまり詳しくありませんが、クライアントで rpc.idmapd をセットアップして、クライアントがサーバーに送信する uid と gid を変更できると思います。

解決策 2:

NFS をマウントするときは、マウントするパーミッションがサーバー上にあるパーミッションと一致している必要があります。たとえば、ユーザーが読み取り専用アクセスしか持っていない場合、読み取り/書き込みでマウントすると、マウントを実際にロードしようとすると、投稿で言及したのと同じエラーが表示されます。残念ながら、これは実際にマウントしたときではなく、フォルダーにアクセスしたときにのみ表示されます。

また、ユーザー NFS がサーバー上で実行されており、クライアント上のユーザーが同じ UID と GID を使用していることも確認する必要があります。 id darren を実行すると、これらの値を確認できます。 サーバーとクライアントの両方で。 UID と GID の値が一致しない場合は、/etc/passwd を編集できます。 そうするために必要ですが、勝手に値を変更する前に、自分が何をしているのかを理解しておく必要があります!

良い情報源:

  • http://nfs.sourceforge.net/nfs-howto/ar01s07.html#pemission_issues
  • http://support.apple.com/kb/TA22243

これがお役に立てば幸いです!

解決策 3:

UID と GID は両方のサーバーで一致していますか?これは、ログイン名やグループ名ではなく、アクセスを制御するために使用しているものです。


Linux
  1. 「mount.nfs:マウント中にサーバーによってアクセスが拒否されました」 – 解決方法

  2. docker.sock 許可が拒否されました

  3. 新しい irssi 接続にデフォルトのニックネームを設定するにはどうすればよいですか?

  1. Rocky / AlmaLinux8でNFSサーバーとクライアントをセットアップする方法

  2. ディレクトリ内のすべてのフォルダ/ファイルにデフォルトのファイル権限を設定する方法は?

  3. mount.nfs:Ubuntu マシンへのマウント中にサーバーによってアクセスが拒否されましたか?

  1. Ubuntu20.04でNFSサーバーとクライアントをセットアップする方法

  2. 新規ユーザーのデスクトップのデフォルトを設定するには??

  3. CentOS8でVSFTPDを設定する方法