FreeBSD9.0-RC3からDebianLinuxボックスにマウントしようとしたときに、奇妙な問題が発生しました。
私が使用しているコマンドは次のとおりです。
Sudo mount -v gorkon:/ dustbin/tmp/test
これにより、次の即時情報が返されます。
マウント:タイプが指定されていません-コロンのためにnfsを想定しますmount.nfs:木曜日にタイムアウトが設定されました1月5日17:37:40 2012マウント.nfs:テキストベースのオプションを試します 'vers = 4、addr = [serverip ]、clientaddr = [cllientaddr] 'mount.nfs:mount(2):アクセスが拒否されましたmount.nfs:gorkon:/ dustbinのマウント中にサーバーによってアクセスが拒否されました
サーバー(gorkon)で見つけることができるログエントリはありません。次のログエントリは、debianボックスのsyslogにあります。
[30082.224612] RPC:サーバーgorkonにはより強力な認証が必要です。
NFSサーバーではnfsuserdが実行されており、rpcbindが実行されています。/etc/exportsで共有を設定して、sec = sysを使用する(同じ方法で接続する)ようにしました。このネットワークにKerberosを設定していないので、開始するつもりはありません。 DebianNFSv4サーバーはSolaris10 NFSv4サーバーに接続し、nfsv4を強制的に使用すると、FreeBSDボックスはNFSを介して独自の共有をマウントできません(エラーはmount_nfs:/ tmp/test 、:アクセスが拒否されました)。 FreeBSD 8.2-RELEASEボックスもマウントされず、同じエラーが発生します。
Solaris 10ボックスは、FreeBSDボックスのマウントもマウントできません。このマシンのエラーは次のとおりです。
genunix:[ID 664466 kern.notice]サーバーgorkonのNFSコンパウンドが失敗しました:エラー7 genunix:[ID 532867 kern.warning]警告:gorkonへのNFSサーバーの初期呼び出しが失敗しました:アクセス許可が拒否されました。
NFSv3マウントは正常に動作します。
何が起こっているのでしょうか?
同じ問題が発生しました。/etc/exportsに「V4:」ルート行があることを確認してください。次のようになります。
V4: / -sec=sys
/tank/dedup Host1 Host2 Host3
FreeBSDサーバーとcmdで認証タイプを指定してそこからマウントしましたか? FreeBSD afaikはNFSv4のためにそれを必要とします。
sec =⟨flavor⟩このオプションは、マウントに使用するセキュリティフレーバーを指定します。現在、次のとおりです。
krb5 ‐ Use KerberosV authentication
krb5i ‐ Use KerberosV authentication and
apply integrity checksums to RPCs
krb5p ‐ Use KerberosV authentication and
encrypt the RPC data
sys ‐ The default AUTH_SYS, which uses a
uid + gid list authenticator
Mount_nfs(8)を参照してください
FreeBSDのサーバー側では、/ etc /rc.confに次の行が必要です。
nfs_server_enable="YES"
nfsv4_server_enable="YES"
nfsuserd_enable="YES"
これは可能な限り最も単純な/ etc/exportsになります
V4: /
/
Debianクライアント側では、次のようにNFSv4を使用してマウントします。
$ Sudo mount -t nfs4 test.home:/ /mnt
Test.homeをNFSサーバーのIPまたはホスト名に置き換え、/ mntを使用するマウントポイントに置き換えることができます。
このコマンドの出力を確認することで、使用されているプロトコルを確認できます。
$ mount
test.home:/ on /mnt type nfs4 (rw,addr=192.168.1.5,clientaddr=192.168.1.3)