|
|
■ Linux NFSサーバの設定 |
2010/03/04 更新 |
|
|
|
設定手順
- 必要なサービスの確認
# /etc/init.d/portmap status
portmap (pid 2500) を実行中...
# /etc/init.d/nfs status
rpc.mountd (pid 27884) を実行中...
nfsd (pid 27881 27880 27879 27878 27877 27876 27875 27874) を実行中...
rpc.rquotad (pid 27869) を実行中...
# /etc/init.d/nfslock status
rpc.statd (pid 2546) を実行中...
# rpcinfo -p
プログラム バージョン プロトコル ポート
100000 2 tcp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 10002 status
100024 1 tcp 10002 status
100011 1 udp 10005 rquotad
100011 1 tcp 10005 rquotad
100003 2 tcp 2049 nfs
100003 2 udp 2049 nfs
100021 1 udp 10011 nlockmgr
100021 1 tcp 10010 nlockmgr
100005 1 udp 10004 mountd
100005 1 tcp 10004 mountd |
- エクスポートファイルの編集 (共有設定)
# vi /etc/exports
|
緑:デフォルト、オレンジ:変更箇所 |
|
/data1※1 192.168.254.0/255.255.255.0※2(rw※3,sync※4,no_root_squash※5)
/data2 192.168.100.33(rw,sync,no_root_squash,insecure※7) |
|
|
|
※1 |
|
共有するディレクトリ。 |
|
※2 |
|
使用 (マウント) を許可するクライアント。 |
|
※3 |
|
「rw」 はクライアントに書き込みを許可する。 デフォルトは 「ro」 でリードオンリー。 |
|
※4 |
|
「sync」 はファイルシステムへの書き込みを同期して行う。 デフォルトは 「async」 で非同期書き込み。
信頼できるネットワークが無い場合は、スループットは低下するが同期書き込みを選ぶ。 |
|
※5 |
|
スカッシュの設定。 デフォルトは 「root_squash」 でクライアントのスーパユーザは、NFSサーバにアクセスした際にNFSサーバ上の
「nfsnobody」 ユーザとしてアクセスされる。 これにより重要なファイルをネットワークユーザから保護している。 「no_root_squash」
によりスーパーユーザの権限でアクセス可能となる。
anonuid=500 |
anonymous アクセスする場合の uid を明示する。 デフォルトは nfsnobody(65534) となる。 |
squash_uids=600-700 |
指定した uid を anonymous にマッピングする。 uid=600~700 は nfsnobody となる。 |
all_squash |
全ての uid とgid を anonymous にマッピングする。 |
no_root_squash |
クライアントの root のアクセスをサーバ上の root として扱う。 他のsquash設定よりも優先される。 |
|
|
※6 |
|
このオプションが設定されたクライアントはそのディレクトリにアクセスできなくなる。 |
|
※7 |
|
「insecure」 はクライアントからのアクセスに使用するポートを制限しない。 デフォルトは 「secure」 で 1023 以下の well known port からの接続のみを許可する。 NFSクライアントがMACの場合はこのオプションが必要。 |
- エクスポートの実行と確認 (共有設定を反映)
# exportfs -rv ※1 exporting 192.168.254.0/255.255.255.0:/data1
exporting 192.168.100.33:/data2
# exportfs -v
/data1 192.168.254.0/255.255.255.0(rw,wdelay,no_root_squash,no_subtree_check,
anonuid=65534,anongid=65534)
/data2 192.168.100.33(rw,wdelay,insecure,no_root_squash,no_subtree_check,
anonuid=65534,anongid=65534)
# showmount -e ※2
Export list for rhel53-cl1.localdomain:
/data2 192.168.100.33
/data1 192.168.254.0/255.255.255.0 |
|
※1 |
|
/etc/exports の記述どおりにエクスポートを実施する。 エントリを削除した場合、アンエクスポートされる。
a : /etc/exports の記述を追加する。 アンエクスポートは行われない。
r : /etc/exports の記述と同期する。 削除したエントリはアンエクスポートされる。
u : アンエクスポートを行う。
v : エクスポート中の情報を詳細に表示する。 |
|
※2 |
|
自分をNFSマウントしているホストを表示する。 |
|
|
■ Linux NFSクライアントの設定 |
2010/03/04 更新 |
|
|
|
設定手順
- 一時的な手動マウント
# mount -t nfs -o soft 192.168.10.10:/home /home
# mount -t nfs -o hard,intr 192.168.10.10:/home /home |
- 起動時にマウントする。 (見やすくするために fstab の列を揃えています。)
# vi /etc/fstab
|
緑:デフォルト、オレンジ:変更箇所 |
|
LABEL=/ /
ext3 defaults
1 1
LABEL=/var /var
ext3 defaults
1 2
LABEL=/boot /boot
ext3 defaults
1 2
tmpfs /dev/shm
tmpfs defaults
0 0
devpts /dev/pts devpts
gid=5,mode=620 0 0
sysfs /sys
sysfs defaults
0 0
proc /proc
proc defaults
0 0
LABEL=SWAP-sda3 swap swap
defaults
0 0
LABEL=/home /home
ext3 defaults,usrquota,grpquota 0 0
192.168.100.20:/data /data nfs hard,intr,bg
0 0 |
|
|
マウントオプション
|
soft |
|
ネットワーク障害が発生した場合、タイムアウトし接続は解除される。 |
|
hard |
|
ネットワーク障害が発生した場合でも、接続は解除されず回復を待つが、その間ソフトウェアはハングアップする。 |
|
intr |
|
割り込みにより、強制的に接続を解除を可能にする。 |
|
bg |
|
マウントをバックグラウンドで行う。 起動時にマウント処理を待たずに、処理を進めることが可能。 |
|
|
|
|
|