Ubuntu 22.04 を NFS クライアントとして設定し、NFS サーバー上の共有ディレクトリを mount と /etc/fstab で扱う手順です。
NFS はマウントできるかだけでなく、名前解決、ネットワーク経路、ファイアウォール、ユーザー ID / グループ ID、起動時の待ち時間まで含めて確認します。
- NFS クライアントパッケージの導入
- NFS サーバーの公開状態確認
- 手動マウントと
/etc/fstab登録 - 起動時マウントと障害時の注意点
書籍
ストーリーで覚える Linux CLI 入門
Linux のコマンドライン操作を基礎から確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
NFS クライアントの位置づけ
| 項目 | 確認すること |
| サーバー名 | 名前解決できるか |
| エクスポート | NFS サーバー側で公開されているか |
| マウント先 | ローカルのディレクトリを用意する |
| fstab | 起動時に待ち続けない設定にする |
| 権限 | UID / GID とファイル権限を確認する |
クライアントパッケージをインストールする
NFS クライアントとして必要なパッケージをインストールします。
sudo apt update
sudo apt install -y nfs-commonサーバーの公開状態を確認する
NFS サーバーが公開しているエクスポートを確認します。ここではサーバー名を nfs-1.example.com としています。
showmount -e nfs-1.example.com
rpcinfo -p nfs-1.example.com | grep nfsマウント先を作成する
クライアント側にマウントポイントを作成します。
sudo mkdir -p /mnt/nfs-share
ls -ld /mnt/nfs-share手動でマウントする
まず手動マウントで動作を確認します。
sudo mount -t nfs nfs-1.example.com:/srv/nfs/share /mnt/nfs-share
findmnt /mnt/nfs-share
df -h /mnt/nfs-share読み書きを確認する
共有ディレクトリの用途に応じて、読み書きできるか確認します。権限エラーが出る場合は、サーバー側 exports と UID / GID を確認します。
touch /mnt/nfs-share/client-write-test
ls -l /mnt/nfs-share/client-write-test
rm /mnt/nfs-share/client-write-test/etc/fstab に登録する
起動時にマウントしたい場合の例です。ネットワークに依存するため _netdev を付け、必須でないマウントでは nofail も検討します。
sudo tee -a /etc/fstab >/dev/null <<'EOF'
nfs-1.example.com:/srv/nfs/share /mnt/nfs-share nfs defaults,_netdev,nofail 0 0
EOF
sudo mount -a
findmnt /mnt/nfs-share起動時マウントの注意
NFS サーバーが停止していると、クライアント側の起動やアプリケーションに影響することがあります。必要に応じて systemd automount や nofail を検討します。
systemctl daemon-reload
systemctl list-units --type=mount | grep nfs || true
findmnt --verify切り分けの観点
- 名前解決できるか
- NFS サーバーへ経路があるか
- 2049/tcp が遮断されていないか
- サーバー側 exports にクライアントのネットワークが含まれているか
- ユーザー ID / グループ ID とファイル権限が合っているか
NFS クライアントで注意すること
NFS クライアントでは、マウントできるかだけでなく、再起動時に待ち続けないか、サーバー停止時にアプリケーションが固まらないかを確認します。/etc/fstab に書く場合は、_netdev、nofail、systemd automount なども検討します。
恒久的なアプリケーションデータを NFS に置く場合は、性能、ロック、障害復旧の前提を確認します。
アンマウントする
不要になった場合はアンマウントし、fstab の設定も必要に応じて削除します。
sudo umount /mnt/nfs-share
findmnt /mnt/nfs-share || trueまとめ
Ubuntu 22.04 の NFS クライアント設定では、nfs-common を導入し、showmount、手動マウント、/etc/fstab の順に確認します。
起動時に必須ではない NFS マウントは、_netdev や nofail を検討します。NFS はネットワーク、名前解決、サーバー側 exports、UID / GID の影響を受けるため、マウントできない場合は順番に切り分けます。

