NAME¶
exportfs -
管理NFS共享檔案系統列表
概述 (SYNOPSIS)¶
/usr/sbin/exportfs [-avi] [-o options,..]
[client:/path ..]
/usr/sbin/exportfs -r [-v]
/usr/sbin/exportfs [-av] -u [client:/path ..]
/usr/sbin/exportfs [-v]
/usr/sbin/exportfs -f
描述 (DESCRIPTION)¶
exportfs
命令用來管理當前NFS共享的檔案系統列表。
這個列表保存在一個單獨的檔案
/var/lib/nfs/xtab
中,當遠端主機要求對一個檔案系統樹加載並訪問時由
mountd
讀取,列表中活動的一部分也保存在在核心共享表中。
通常
xtab 在執行
exportfs -a.
的時候,根據
/etc/exports
中定義的共享列表來初始化。
但是,管理員可以選擇添加或刪除獨立的檔案系統,不必修改
/etc/exports ,只要執行
exportfs
就可以了。
exportfs 和它的合作者
mountd
工作在兩種模式之一,一種是2.4以及早期的核心採用的傳統模式,
另一種是2.6以後核心採用的模式。
2.6之後的核心提供了
nfsd
虛擬檔案系統,掛載點是
/proc/fs/nfs。
在2.6核心中如果沒有掛載這個系統,將使用傳統模式。
在新模式中,
exportfs
不為核心提供任何信息,只通過
/var/lib/nfs/xtab
檔案將信息提供給
mountd
。
mountd
將等待核心請求,提供需要的信息。
在傳統模式中,任何標識了一台特定主機(而不是一個子網或是一個工作組)的
共享請求會直接進入核心共享表,同時寫入
/var/lib/nfs/xtab.
甚至於,任何列在
/var/lib/nfs/rmtab
中的掛載點,只要它符合一個不指定主機的共享請求,將使得
rmtab
給出的主機的一個適當的共享條目進入核心的共享表中。
選項 (OPTIONS)¶
- -a
- 打開或取消所有目錄共享。
- -o options,...
- 指定一列共享選項,與
exports(5)
中講到的類似。
- -i
- 忽略 /etc/exports
檔案,從而只使用預設的和命令行指定的選項。
- -r
- 重新共享所有目錄。它使
/var/lib/nfs/xtab 和 /etc/exports 同步。
它將 /etc/exports
中已刪除的條目從
/var/lib/nfs/xtab
中刪除,將核心共享表中任何不再有效的條目移除。
- -u
- 取消一個或多個目錄的共享。
- -f
- 在「新」模式下,刷新核心共享表之外的任何東西。
任何活動的客戶程式將在它們的下次請求中得到
mountd
添加的新的共享條目。
- -v
- 輸出詳細信息。當共享或者取消共享時,顯示在做什麼。
顯示當前共享列表的時候,同時顯示共享的選項。
討論 (DISCUSSION)¶
共享目錄 (Exporting Directories)¶
第一條概述中顯示出如何執行命令來添加新的共享。
當執行
exportfs -a時, 所有
exports(5)
中的目錄將添加到
xtab
並且將結果列表送進核心。
host:/path
參數指定了要共享的目錄和可以訪問它的主機。
所有
exports(5)
中定義的格式都可以支持。
想要將一個目錄共享給所有其他機器,只要用
:/path 就可以了。
這種指定一個特定主機/目錄的共享選項來自於多種來源。
有一系列的預設選項,可以在
/etc/exports
中指定它們(除非指定了
-i 選項)。
另外,管理員可以使用
-o
參數和一系列以逗號分隔的選項來覆蓋所有預設選項。
做法就像在
exports(5)
中一樣。 因此,
exportfs
可以用來修改已經共享的目錄的共享選項。
nfsd(8)
對核心共享表的修改會在命令行解析和
xtab
檔案修改之後馬上進行。
預設的共享選項是
sync,ro,root_squash,no_delay。
取消共享 (Unexporting Directories)¶
第三種語法顯示了怎樣取消一個當前的共享目錄。
當執行
exportfs -ua, 的時候,
xtab
中的所有條目被從核心共享表中移除,
這個檔案會被清空。這樣可以迅速停止所有NFS服務。
要取消單獨的共享條目,可以指定一個
host:/path
參數。這樣刪除了
xtab
中的條目並且移除了對應的核心條目(如果有的話)。
獲取共享表 (Dumping the Export Table)¶
執行不帶選項的
exportfs
將列出當前的共享列表。當給出
-v
選項時,會列出各自的標誌。
範例 (EXAMPLES)¶
這條命令將所有
/etc/exports
中列出的目錄加入到
/var/lib/nfs/xtab
中,將結果送入核心:
# exportfs -a
如果要將
/usr/tmp
目錄共享給
djando主機,
允許匿名寫入,應當這樣:
# exportfs -o async django:/usr/tmp
依賴性 (DEPENDENCIES)¶
提供給IP子網,DNS和NIS域的共享不會使這些工作組中的客戶程式馬上就能讀取NFS;
這種類型的共享其實是向
mountd(8)
提供的信息,為來自這些客戶的掛載請求授權。
這通常不是一個大問題,因為重啟過程中,任何存在的加載都保存在
rmtab 中。
當取消一個子網或域的共享時,當前任何提供給這個工作組中的成員的共享
將被檢查。如果它們不再有效,它們將被移除。
參見 (SEE ALSO)¶
exports(5),
mountd(8)
作者 (AUTHORS)¶
Olaf Kirch, <okir@monad.swb.de>
Neil Brown, <neilb@cse.unsw.edu.au>
[中文版維護人]¶
袁乙鈞 <bbbush@163.com>
[中文版最新更新]¶
2003.10.26
《中國linux論壇man手冊頁翻譯計劃》:¶
http://cmpp.linuxforum.net