LinuxサーバーでNFSマウントをするときにいろいろと引っかかったのでまとめておきます。
CentOS7でNFSマウント手順(クライアント側)
CentOS7(redhat7系含む)でNFSプロトコルのファイルサーバをマウントする際に、エラーを図れたので、少なからず同じ事象の方がいるはずと思い、設定と対処法を以下でまとめます。
1.ローカル側でマウントするディレクトリ作成
LinuxサーバでNFSファイルサーバをマウントする際、どのフォルダにマウントをするのか必要になります。
今回はmntは以下に「hoge」フォルダを作成しておきます。
$ mkdir /mnt/hoge
2.NFSマウント
次に実際のファイルサーバーを上記で作成したフォルダにマウントさせます。
IPでアクセスの場合
$ mount -t nfs 192.168.1.1:/nfs/test/nfs-test /mnt/hoge
ドメインでのアクセスの場合
$ mount -t nfs hoge.hoge.com:/nfs/test/nfs-test /mnt/hoge
3.マウントされているか確認
上記でマウントが成功した場合は以下のコマンドでマウントをされているか確認します。
$ df -h
4.次回起動時に自動マウントさせるため「stab」記載
再起動した際に、自動でマウントをしてくれるように、fstabで以下を追記しておきます。
$ vim /etc/fstab #NFS_TEST 192.168.1.1:/nfs/test/nfs-test /mnt/hoge nfs defaults 0 0
※マウント時に以下エラーが発生した場合
CentOS7でNFSマウント時に以下のエラーが発生する場合があります。
A dependency job for rpc-statd.service failed.
このエラーが発生した場合は、systemctlコマンドで「rpcbind」のサービスを立ち上げるようにします。
$ systemctl enable rpcbind.service $ systemctl start rpcbind.service $ systemctl status rpcbind.service
アンマウント
マウントを外す際は以下でアンマウントを実行します。
umount -l /mnt/hoge
NFS自動マウントでエラー発生
CentOS7ではIPv6を無効化すると、NFS自動マウントができず、次回起動時に以下サービスが
failとなりマウントができなくなります。
nfs-server rpcbind.service rpcbind.socket
また、起動時に毎回以下のサービスを起動しないといけません。
systemctl enable rpcbind.service systemctl start rpcbind.service
結果的に言うと「IPv6」の無効化が原因でした。
IPv6を有効かすることで、次回起動時も問題なくNFS自動マウントができるようになります。
IPv6有効化
IPv6の状態を確認
$ cat /etc/sysctl.conf net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1
IPv6有効化
$ sed -i -e "/net.ipv6.conf.all.disable_ipv6/s/1/0/" /etc/sysctl.conf $ sed -i -e "/net.ipv6.conf.default.disable_ipv6/s/1/0/" /etc/sysctl.conf
有効化の確認
$ cat /etc/sysctl.conf net.ipv6.conf.all.disable_ipv6 = 0 net.ipv6.conf.default.disable_ipv6 = 0
マウントは結構はまりやすいので、今回のような事象が発生した場合は参考にしてください。
サーバーを構築するならVPSがおすすめです。
エンジニアのオンライン学習
ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。
おすすめオンライン教材 | |
自宅で学習ができるオンラインスクール | |
ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。
コメントを残す