NFS(Network File System)をmountする方法です。
共有したいディレクトリを持つサーバーにNFSの設定をして、そこを参照したいサーバーでmountします。
NFSサーバーの設定
/etc/exportsファイルを作成
編集方法は
[共有するディレクトリ] [公開先](書き込みの可否,オプション)
となります。
/home/neko 192.168.0.0/255.255.255.0 (rw) //192.168.0.xに読み書き許可 /home/neko *.foo.co.jp (rw) //*.foo.co.jpに読み書きを許可 /home/neko host-a (ro) //host-aに読み込みのみを許可
ro ファイルの読み込みのみを許可
rw 読み書きを許可
sync 書き込んだデータを共有ディレクトリに即座に書き込み
async 書き込んだデータを一旦サーバーのメモリに蓄積し、随時書き込み(既定値)
wdelay 複数の書き込み処理を1度に行う。NFSサーバ側での更新を一括して行う
no_wdelay wdelayとは反対。syncオプションと併用する
ユーザIDのマッピングに関するオプション
root_squash クライアントからのアクセスを匿名ユーザー(nobody)にマッピング(既定値)
途中でサーバーが再起動などするとデータが壊れる場合がある
エクスポートされたディレクトリに対して、root 権限ではアクセスできないようにする。
no_root_squash クライアントからのroot権限での接続を、そのままroot権限によるアクセスとして処理
エクスポートされたディレクトリに対して、root 権限でアクセスできるようにする。
all_squash すべてのUID,GIDを匿名アカウントへマッピング(nobody)
root を含めて全てのユーザーがnobody ユーザーにマッピングされる
anonuid すべてのUIDを匿名アカウントへマッピング
anongid すべてのGIDを匿名グループへマッピング(nobody)
squash_uids 指定したUIDのユーザをすべて匿名アカウントへマッピング
squash_gids 指定したGIDユーザをすべて匿名グループへマッピング
map_identity UID,GIDに関する変換を行わない。
map_static UID,GIDに関する変換を定義するマップファイルを指定する
all_squash 全てのアクセスをnobodyからのアクセスとして処理
anonuid=uid root_squashあるいはall_squashがオプションの場合にanonymousの利用者IDを指定
anongid=gid root_squashあるいはall_squashがオプションの場合にanonymousのグループIDを指定
以下home/nekoディレクトリをエクスポートする設定例です。
# cat /etc/exports /home/neko 192.168.0.0/255.255.255.0(rw,sync,no_root_squash,no_all_squash)
設定の更新
/etc/exports ファイルを編集しなおした場合、exportfs コマンドを使用して、設定の変更を反映させます。
#exportfs -ra //-r 全てのディレクトリを再エクスポートする。 //-a 全てのディレクトリをエクスポート・アンエクスポートする。 [/basah]<br/> <h3>設定の確認</h3> # exportfs -v /home/neko 192.168.10.0/255.255.255.0(rw,wdelay,root_squash,no_subtree_check,anonuid=65534,anongid=65534)
NFSを再起動する
# service nfsd restart
NFSクライアントの設定
NFSの設定を別の端末から参照する設定です。
# mount -t nfs 192.168.0.1:/home/neko /home
-a /etc/fstabに記述されているファイル・システムをマウントする。ただし、noautoのファイル・システムはマウントから除外される
-n マウントをする際、/etc/mtabに情報を書き込まない
-r ファイル・システムを読み込み専用でマウントする
-w ファイル・システムを読み書き可能な状態でマウントする
-t ファイル・システムのタイプを指定する。指定できる
・システム起動時に自動的に/home/projectをマウントしたい場合は、
NFSクライアントの/etc/fstabに次の設定を追加する。
192.168.0.7:/home/neko /home nfs defaults 0 0