ルートの代わりにnfsv4フォルダを直接マウントする方法

ルートの代わりにnfsv4フォルダを直接マウントする方法

CentOS 8 の実行

server side: /etc/exports:
/home/share *(ro)

/home と /home/share は root.root によって所有され、ディレクトリに対して 755 の権限、ファイルに対して 644 の権限を持ちます。

 client side:
 mount -t nfs4 server:/ /sharefolder

ファイルシステムのルートをマウントするのではなく、/home/share を /sharefolder に直接マウントするにはどうすればよいですか? 「mount -t nfs4 server:/home/share /sharefolder」と試すと、「操作は許可されていません」というエラーが表示されます

答え1

mount -t nfs4 server:/home/share /sharefolderクライアント側のコマンドは正しいように見えます。また、テストしたところ、セットアップは正常に機能しました。

もちろん、コマンドは root として入力するか、またはsudoroot と一緒に使用する必要があります。「操作は許可されていません」というエラー メッセージは、誤って非 root ユーザーとしてコマンドを実行したか、共有名を誤って入力した可能性があることを示しています。

エクスポートしてマウントした場合でもserver:/home/share、NFSv4サーバーは自動生成する必要があることに注意してください。仮想エクスポート/およびの場合/home。ただし、これらは NFS サーバーの実際の/や ではなく、実際にエクスポートされたディレクトリに到達するために必要な最小限のサブディレクトリのみを含む仮想の読み取り専用ディレクトリです。共有がマウントされると、 NFS サーバーで/home次のようになります。/proc/fs/nfsd/exports

cat /proc/fs/nfsd/exports
# Version 1.1
# Path Client(Flags) # IPs
/home   *(ro,insecure,no_root_squash,sync,no_wdelay,no_subtree_check,v4root,uuid=e4c0fcd4:00b94db3:b63bd9a8:0e705e29,sec=390003:390004:390005:1)
/home/share     *(ro,root_squash,sync,wdelay,no_subtree_check,uuid=e4c0fcd4:00b94db3:b63bd9a8:0e705e29,sec=1)
/       *(ro,insecure,no_root_squash,sync,no_wdelay,no_subtree_check,v4root,fsid=0,uuid=e4c0fcd4:00b94db3:b63bd9a8:0e705e29,sec=390003:390004:390005:1)

答え2

少しテストした後、問題を再現することができました。ファイアウォールの問題であることが判明しました。ファイアウォールが無効になっていることを確認し、nfsその後共有が機能することを確認してください。

以下を使用すると仮定しますfirewalld:

sudo systemctl stop firewalld

が期待通りに動作することを確認したらnfs、ファイアウォールの設定を変更する必要があります。 nfsは他のデーモンプロセスに依存しているため、 が正しく動作するためには、 だけでなく もnfs通過させる必要があります。nfsmountdrpc-bind

sudo firewall-cmd --permanent --add-service=rpc-bind
sudo firewall-cmd --permanent --add-service=mountd
sudo firewall-cmd --permanent --add-service=nfs
sudo firewall-cmd --reload

これらのサービスを特定のゾーンでのみ許可したい場合は、次のようにゾーンを指定することもできます。--zone=nfszone

このソリューションを徹底的にテストしたわけではないので、すべての機能(ファイルロックなど)を動作させるには追加のポートを開く必要があるかもしれません。https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/storage_administration_guide/s2-nfs-nfs-firewall-config

関連情報