NFSファイルシステムに問題があります。クライアントはサーバーに接続できませんが、サーバーは要求を受け取り、クライアントへのアクセスを許可します。構成は次のとおりです。
NFSサーバー
- FedoraLinux 38
/home/user/nfs/
モード0777を含むフォルダ- IP アドレスは次のとおりです。
193.232.173.2
/etc/export
コンテンツ:/home/user/nfs 193.232.173.251(rw,sync,no_acl,insecure,no_root_squash)
NFSクライアント
- UNIXベースのディスクレスオペレーティングシステム(oc2000、RT OS BAGETとも呼ばれ、UNIX自体ではなくUNIXベース)
- IP アドレスは次のとおりです。
193.232.173.251
- 次のコマンドラインを使用してプログラムコードを介してNFSをマウントします。
mount -t nfs -o rsize=4096,wsize=4096 193.232.173.2:/home/user/nfs /nfs
他のコマンドラインオプションは利用できません。
結果
NFSはマウントされていますが、クライアントは(プログラムコードでも)読み書きできません。 NFSサーバーはNFSバージョン2をサポートせず、クライアントはNFSv2でのみ機能することがわかりました。
NFSv2をサポートするLinuxカーネル(バージョン6.6.8)を構築しましたが、接続されていません。クライアントは上記のコマンドを送信し、何も起こりません。
システムログには、次のログが含まれます。
rpc.mountd authenticated mount request from 193.232.173.251:1023 for /home/user/nfs (/home/user/nfs)
rpc.mountd granted access to /home/user/nfs for 193.232.173.251
rpc.mountd nfsd_fh: found 0x55f566742490 path /home/user/nfs
rpc.mountd nfsd_fh: inbuf '193.232.173.251 4 \x408a0300938534b9'
- クライアントオプションの組み合わせを試しましたが、
/etc/export
役に立ちませんでした。 - 設定を切り替えようとしましたが、
/etc/nfs.conf
役に立ちませんでした。 [nfsd]
部品は/etc/nfs.conf
次のとおりです。debug=1 udp=on tcp=on vers2=y vers3=y vers4=n vers4.0=n vers4.1=n vers4.2=n rdma=y rdma-port=20049
上記のメッセージを見つけるためにLinuxソースコードを見てみましたが、役に立ちませんでした。
私を助けてくれますか? NFSを介してクライアントとサーバーが機能するようにするには、どうすればよいですか?
UPD。以下はrpcinfo -pの出力です。
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100005 1 udp 20048 mountd
100005 1 tcp 20048 mountd
100024 1 udp 44697 status
100024 1 tcp 37411 status
100005 2 udp 20048 mountd
100005 2 tcp 20048 mountd
100005 3 udp 20048 mountd
100005 3 tcp 20048 mountd
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100227 2 tcp 2049 nfs_acl
100227 3 tcp 2049 nfs_acl
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
100227 2 udp 2049 nfs_acl
100227 3 udp 2049 nfs_acl
100021 1 udp 60925 nlockmgr
100021 3 udp 60925 nlockmgr
100021 4 udp 60925 nlockmgr
100021 1 tcp 46315 nlockmgr
100021 3 tcp 46315 nlockmgr
100021 4 tcp 46315 nlockmgr
答え1
みんなありがとうございます。問題は元の方法で解決されました。このクライアントコンピュータのドキュメントに従ってFedora 22にダウングレードし、RPCとNFSを設定しました。クライアントはサーバーに接続し、ファイルを読み書きします!
答え2
NFSサーバーで(Fedora 38について話しています)トラブルシューティングのためあなたが欲しい
- SELINUXをオフにするか、起動するたびに手動でオフにするか、変更して
setenforce 0
次/etc/selinux/config
のように設定します。permissive
- ファイアウォールの電源を切る
/etc/nfs.conf
構文がどこでも正しいことを実際に確認してください。vers<num> = y
最初に登場するのは、最新のNFSv4がすべて1つのポート(2049)にあることです。 NFSv3はmountd
、、、statd
およびlockd
他のnfsd
ポートと一緒にポート111にありますsm-notify
。/etc/nfs.conf
Fedora38のnfsv4で(現在)注釈付きの内容を見ることができます。まず、デフォルトでNFSv4に設定されている現在のLinuxディストリビューションがNFSv2にフォールバックできるようにするには、nfsサーバーが正しいポート(ファイアウォールの代わりに)でリッスンしていることを確認して、nfsv2クライアントが次のようになっていることを確認する必要があります。 。