NFS の設定
1. 概要
ここではUNIXで標準的なファイル共有システムであるNFS(Network File System)について解説する. WindowsでもMSDNアカデミックアライアンスに含まれるWindows Services for UNIXを導入することにより, NFSを用いたファイル共有を行える.
2. ファイルの公開(サーバ)
ある特定のディレクトリを公開するには /etc/exports にその旨を記述 する. 例えば,/export/local を jegan という計算機に公開するには 以下のように記述する.
/export/local jegan
ただし,この場合にはルートでのアクセスは許可されていないので, このディレクトリをマウントしたとしても,jegan のルートはこのディ レクトリにファイルを作ることができない. これは,例えば jegan 側で何かのツールをルートの権限でインストール したい時などには問題となる. このような場合には,以下のように記述し,このディレクトリに対して,jegan のルートは NFS サーバのルートとしてアクセスできるように設定する必要がある.
/export/local -root=jegan jegan
幾つかのUNIXでは,/etc/exports に記述するだけでファイルの公開が可能 であるが,多くの UNIX系OS では,exportfs コマンドを実行する必要がある. 例えば /etc/exports に書かれた全てのファイルを公開するには以下のよう に実行する.
% exportfs -a
3. ファイルの共有(クライアント)
ファイルの共有を行なうには mount コマンドを実行する. 例えば,fs.cla.kobe-u.ac.jp の /export/home をローカルの /home としてマウントしたければ以下のように実行する. 予め,/home というディレクトリ(ファイルでも良い)がローカルに存在しな くてはならないことに注意しよう(これをマウントポイントと言う).
% mount fs.cla.kobe-u.ac.jp:/export/home /home
起動時に自動的にマウントしたいのであれば,/etc/fstab に以下のように 記述する.
fs.cla.kobe-u.ac.jp:/export/home /home nfs rw,bg,soft 0 0
4カラム目は mount のオプションで,それぞれrw:読み書き可能 (read-write),bg:バックグラウンドでリトライ,soft:マウン トに失敗するとエラー終了の意味である. オプションの詳細については man mount で見て頂くと良い.
5カラム目は dump コマンドでのバックアップの頻度を示し,6カラム目は fsckコマンドでのチェックレベル(何回目の再起動で fsckを 実行するか)を示す. いずれも NFS の場合には関係がない.
4. マウントの確認
サーバ側で,どのファイルがどの計算機にマウントされているのか調べるには mount コマンドを用いる. 例えば,全てのファイルについて表示させるには以下のように実行する.
% mount
クライアント側で,正しくマウントできているか調べるには df コマ ンドを利用すると良い.
% df Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/wd0s1a 1213199 22339 1093805 2% / /dev/wd2s1e 420431 108084 278713 28% /usr procfs 4 4 0 100% /proc fs.cla.kobe-u.ac.jp:/export/home 34600237 8869759 22270454 28% /usr/home
5. その他・・・
通常,NFS に関するデーモンは /etc/rc.* といったファイル内で自動的に 起動される. 幾つかの OS ではこれを起動することを設定しなくてはならない. 例えば FreeBSD では /etc/rc.conf に nfs_client_enable="YES" という記述が必要である. これらは,FreeBSD では /stand/sysinstallコマンドで設定が可能である. Vine Linux では setup コマンドで NFS の設定が可能らしい.