概要
検証目的で、NFS Server/Clientを構築する機会がありました。
NFSのバージョンは v4 です。
本記事はその記録となります。
環境
NFS ServerとClientはどちらも次の通りです。
マシン:Amazon EC2
OS:Ubuntu 22.04
NFS Server作業
NFS Serverをインストールします。
$ sudo apt install nfs-kernel-server
ディレクトリの共有設定をします。
$ sudo vi /etc/exports
ファイルの最下部に次のように記載して下さい。
<共有するディレクトリのフルパス> <Client IP>(rw,crossmnt,fsid=0,no_subtree_check)
補足説明
fsid=0
とすることで、共有ディレクトリはclientからはルートディレクトリ(/)として認識されるようになります。fsid=0
とするのはNFS v4の約束事のようです。
設定を反映します。
$ sudo exportfs -ra
反映されたかどうか確認します。下記は例になります。
$ sudo exportfs -v
/home/ubuntu/nfs
172.16.xxx.xxx(sync,wdelay,hide,crossmnt,no_subtree_check,fsid=0,sec=sys,rw,secure,root_squash,no_all_squash)
NFS Client作業
NFS Clientをインストールします。
$ sudo apt install nfs-common
任意のディレクトリ名にて、マウントポイントを作成します。
$ mkdir <任意のディレクトリ名>
NFSマウントを実施します。
$ sudo mount <NFS Server IP>:/ <マウントポイント>
マウントされたことが確認できれば完了です。
以下は例になります。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 29G 1.6G 28G 6% /
tmpfs 475M 0 475M 0% /dev/shm
tmpfs 190M 872K 190M 1% /run
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/xvda15 105M 6.1M 99M 6% /boot/efi
tmpfs 95M 4.0K 95M 1% /run/user/1000
172.16.xxx.xxx:/ 29G 1.6G 28G 6% /home/ubuntu/nfs
オプション
必要に応じて、OS起動時のNFS自動マウント設定も実施下さい。
$ sudo vi /etc/fstab
ファイルの最下部に次のように記載して下さい。
<NFS Server IP>:/ <マウントポイント> nfs defaults 0 0
マシンを再起動後にログインし、自動的に共有ディレクトリがマウントされていることを確認して下さい。
参考
次のページを参考にさせていただきました。
https://coush.jp/250.html
https://kitani3.blogspot.com/2016/03/nfs-v4.html