手当たり次第に書くんだ

飽きっぽいのは本能

Ubuntu 22.04 NFS クライアント設定 – mount と fstab の基本

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 に書く場合は、_netdevnofail、systemd automount なども検討します。

恒久的なアプリケーションデータを NFS に置く場合は、性能、ロック、障害復旧の前提を確認します。

アンマウントする

不要になった場合はアンマウントし、fstab の設定も必要に応じて削除します。

sudo umount /mnt/nfs-share
findmnt /mnt/nfs-share || true

まとめ

Ubuntu 22.04 の NFS クライアント設定では、nfs-common を導入し、showmount、手動マウント、/etc/fstab の順に確認します。

起動時に必須ではない NFS マウントは、_netdevnofail を検討します。NFS はネットワーク、名前解決、サーバー側 exports、UID / GID の影響を受けるため、マウントできない場合は順番に切り分けます。

関連する記事
Ubuntu 22.04 NFS クライアント設定 – mount と fstab の基本

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る