伊達です.
NFS まわりの挙動はカーネルの実装と操作するプログラムに依存しているので,
私の環境を書いておきます.
カーネル 2.4.18-0vl3
nfs-utils 0.3.1-12vl2
From: Ken Mano <mano@xxxxxxxxxxxxxxxxxxxx>
> エントリ
> rmtab xtab
> 1. /etc/exports にエントリ追加,nfsd start 空 空
> 2. リモートでマウントする あり 空
> 3. リモートでアンマウントする 空 空
> 4. ローカルで exportfs -r する 空 あり
rmtab の挙動は私のところでも同じです.
エントリ
rmtab xtab
1. /etc/exports にエントリ追加,nfsd start 空 空
2. リモートでマウントする あり あり
3. リモートでアンマウントする 空 あり
4. ローカルで exportfs -r する 空 空
> /etc/exports -u なんちゃらというコマンドのようなので,これを実行すると,
> たしかに umount できるようになりました.
/usr/sbin/exportfs [-av] -u [client:/path ..] でしょうか.
これでいいと思います.「ローカルのデバイスをアンマウントしたいときは
リモートに export されていない状態にしなければならない」と考えれば.
-r と -u の違いは,-r はリモートがマウント中なら引き続き export し続け
るのに対し,-u はリモートのマウントリクエストを拒絶します.
(/etc/exportfs から削除して nfsd 再起動したのと同じ)
リモートでは,マウント中(かつ使用中)でもアクセスできなくなります.
> ただ,素人考えではありますが,xtab 関係の動作には,どうも納得の行かな
> い部分があります.今ちょっと余裕が無いので説明することができませんが,
> いずれまたきちんとまとめて報告させて頂きます.
exportfs(8)に照らせば,確かに不思議な挙動ですね.
ソースは追ってませんが,より正確な情報源であるカーネル自身の export
テーブルはおそらく /proc/fs/nfs/exports あたりで,私のところではこれが
xtab の内容と一致してます.
---
伊達 央 <date@xxxxxxxxxxxxxxxxxxxx>