前の章では、NFSサーバー (n) 側でNFSv4の「仮想ルート」(/exports) を設定し、そこに実際のデータ (/srv/nfs/data) を bind マウントしました。この章では、NFSクライアント (c) 側からそのv4サーバーに接続します。
NFSv3とv4のクライアント接続における最大の違いは、「何をマウントターゲットとして指定するか」です。これがv4流の「作法」であり、昨日のような混乱を解消する鍵となります。
192.168.1.100:/srv/nfs/data)192.168.1.100:/ または 192.168.1.100:/data)この手順は、クライアント (c) がUbuntuでもRHELでも全く同じです。なぜなら、OSの違いではなく、NFSという「プロトコル(通信ルール)」の作法の違いだからです。
mount (v4方式):仮想ルート (/) 全体をマウントする目的:
これがNFSv4で最も標準的かつ推奨される「作法」です。サーバー (n) の「総合エントランス(fsid=0 が設定された仮想ルート)」全体を、クライアント (c) 側の単一の接続口(マウントポイント)に接続します。
例えるなら:
NFSv3が「データ保管庫(/srv/nfs/data)直通の専用トンネル」を掘る作業だったのに対し、NFSv4のこの方法は、クライアント (c) の「扉(/mnt/nfs)」を、サーバー (n) の「デパートの総合エントランス(192.168.1.100:/)」に接続する作業です。
どんな時に使う?:
NFSv4サーバーに接続する際の、最も標準的で推奨される方法です。サーバー (n) 側が将来的に新しい共有(例: /exports/web_assets)を追加しても、クライアント (c) はこのマウント設定を変更する必要がありません。
NFSバージョン4を明示的に指定し、サーバー (n) の「仮想ルート (/)」をクライアント (c) の /mnt/nfs にマウントします。
sudo mount -t nfs -o vers=4 192.168.1.100:/ /mnt/nfs
sudo: ファイルシステムの接続(マウント)は、システム全体に関わる操作のため、管理者権限が必要です。t nfs:
nfs であることを指定します。nfs4 と指定することもできますが、nfs と指定して o vers=4 を使うのが一般的です)o vers=4:
vers=4) を明示的に指定します。これがv4接続の鍵です。