NFSサーバー・クライアント構築手順
サーバー側の設定
1. NFSサーバーのインストール
# パッケージ更新
sudo apt update
# NFSサーバーをインストール
sudo apt install nfs-kernel-server -y
2. 共有ディレクトリの作成
# 画像保存用ディレクトリを作成
sudo mkdir -p /mnt/images
# 所有権を設定
sudo chown nobody:nogroup /mnt/images
sudo chmod 755 /mnt/images
3. NFSエクスポート設定
# エクスポート設定ファイルを編集
sudo nano /etc/exports
以下を追加(ネットワーク範囲は環境に合わせて変更):
/mnt/images 192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash)
パラメータ説明:
192.168.1.0/24: アクセス許可するネットワーク範囲rw: 読み書き可能sync: 同期書き込みno_subtree_check: パフォーマンス向上no_root_squash: rootユーザーの権限を維持
4. NFSサーバーの起動
# 設定を反映
sudo exportfs -ra
# NFSサーバーを再起動
sudo systemctl restart nfs-kernel-server
# 自動起動を有効化
sudo systemctl enable nfs-kernel-server
# ステータス確認
sudo systemctl status nfs-kernel-server
5. 共有状況の確認
# エクスポートされているディレクトリを確認
sudo exportfs -v
# IPアドレスを確認(クライアント側で使用)
ip a
6. ファイアウォール設定(必要な場合)
# UFWを使用している場合
sudo ufw allow from 192.168.1.0/24 to any port nfs
クライアント側の設定
1. NFSクライアントのインストール
# パッケージ更新
sudo apt update
# NFSクライアントをインストール
sudo apt install nfs-common -y
2. マウントポイントの作成
# マウント先のディレクトリを作成
sudo mkdir -p /mnt/images
3. NFSサーバーの確認
# NFSサーバーの共有を確認(<NFSサーバーのIP>は実際のIPに置き換え)
showmount -e <NFSサーバーのIP>
4. 一時的なマウント(テスト用)
# NFSをマウント
sudo mount <NFSサーバーのIP>:/mnt/images /mnt/images
# マウント確認
df -h | grep images
ls -la /mnt/images
5. 永続的なマウント設定
# fstabを編集
sudo nano /etc/fstab
以下の行を追加:
<NFSサーバーのIP>:/mnt/images /mnt/images nfs defaults,_netdev 0 0
パラメータ説明:
defaults: デフォルトオプション_netdev: ネットワーク利用可能後にマウント0 0: dump/fsckの設定
6. fstabからマウント
# fstabの設定を適用
sudo mount -a
# 確認
df -h | grep images
mount | grep images
7. 動作確認
# テストファイルを作成
sudo touch /mnt/images/test.txt
# ファイルが作成できることを確認
ls -la /mnt/images/
トラブルシューティング
マウントできない場合
# ネットワーク接続確認
ping <NFSサーバーのIP>
# NFSサーバーの共有確認
showmount -e <NFSサーバーのIP>
# ポート確認(サーバー側)
sudo ss -tulpn | grep 2049
# ログ確認(サーバー側)
sudo journalctl -u nfs-kernel-server -n 50
権限エラーの場合
# サーバー側で権限確認
ls -la /mnt/images
# 必要に応じて権限変更
sudo chmod 777 /mnt/images # 開発環境の場合
複数クライアントからの利用
複数のLXCコンテナから同じNFSをマウントする場合、各クライアントで上記の「クライアント側の設定」を繰り返します。
バックアップ設定(推奨)
Proxmox Web UIからの設定
- データセンター → バックアップ
- 追加 をクリック
- 設定:
- スケジュール:
0 2 * * *(毎日2時) - 選択モード: NFSサーバーのLXCを選択
- 保持: 7世代
- モード: スナップショット
- 圧縮: ZSTD
- スケジュール:
コマンドラインからの手動バックアップ
# NFSサーバーLXCのバックアップ
vzdump <CTID> --storage local --mode snapshot --compress zstd