exportfs(8) | System Manager's Manual | exportfs(8) |
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)
作者 (AUTHORS)
Olaf Kirch, <okir@monad.swb.de>
Neil Brown, <neilb@cse.unsw.edu.au>
[中文版維護人]
袁乙鈞 <bbbush@163.com>
[中文版最新更新]
2003.10.26
《中國linux論壇man手冊頁翻譯計劃》:
跋
本頁面中文版由中文
man 手冊頁計劃提供。
中文 man
手冊頁計劃:https://github.com/man-pages-zh/manpages-zh
18 July 2003 |