NFSを介してサーバーからクライアントにworkspace
フォルダーをマウントしようとしています。このために、サーバー上の/export
に以下を追加して、フォルダーを/etc/fstab
にバインドします。
/home /export none bind
次に、サーバーの/etc/exports
に次の行を追加します。
/export *(ro,sync,no_subtree_check,insecure,fsid=0)
/export/workspace *(rw,sync,no_subtree_check,insecure,nohide)
Exportfsファイルをロードし、nfs-kernel-serverを再起動します。
# exportfs -vr
# service nfs-kernel-server restart
次に、クライアントに移動して、エクスポートできるフォルダーを確認します。
# showmount -e 192.168.145.131
Export list fo 192.168.145.131:
/export/workspace *
/export *
しかし、フォルダをマウントしようとすると、次のエラーが発生します。
$ Sudo mount -t nfs4 192.168.145.131:/workspace nfs/ -v
mount.nfs4: timeout set for Sat Apr 19 19:16:51 2014
mount.nfs4: trying text-based options 'addr=192.168.145.131,clientaddr=192.168.145.128'
mount.nfs4: mount(2): No such device
mount.nfs4: No such device
/export/workspace
と/home/workspace
もマウントしようとしましたが、同じエラーが発生します。クライアントとサーバーの両方でmodprobe
を使用してNFSモジュールをロードしようとしましたが、モジュールはクライアントとサーバーの両方にロードされています。
3日で問題解決!!
新しいカーネルバージョン(3.8)のクライアントからnfs4サーバーフォルダーをマウントしてみました。私はそうすることができました。そこで、構成ファイル/boot/configure-3.8-generic
ファイルを/usr/src/.config
にコピーし、オプションFilesystems -> Network File Systems -> NFS3 client load as module
およびNFS4 client
loadをモジュールとして有効にしました。
カーネルを再度コンパイルし、initrd image
を作成し、grub
を更新しました。これで、2.6カーネルクライアントからもサーバーフォルダーをマウントできるようになりました。
システムのアップグレード後にエラー_mount.nfs4: No such device
_が発生しましたが、後で再起動することで解決しました。
問題は、システムのアップグレード後に古いカーネルモジュールディレクトリ/usr/lib/modules/$(uname -r)/
が削除されるため、nfs用のモジュールのロードに失敗するようです。