如何配置NFS.(網絡文件夾)

nfs可以有效的在linux下共享文件.

它是一個RPC服務,提供透明、一體化的聯機共享文件訪問。從用戶的角度看,NFS幾乎是不可見的,因爲共享文件名本身無法表示文件是本地的還是遠程的。和Windows下的共享文件使用139端口不同,NFS使用UDP/TCP的2049端口。

我們知道,在Linux下面無論是軟盤、光盤還是其他的邏輯驅動器都是需要先mount,然後才能訪問該驅動器中的內容,這叫做“安裝本地文件系統”,而NFS實際上也是通過安裝“文件系統”來實現文件共享的,只不過NFS安裝的是“遠程文件系統”。對於Linux而言,安裝“遠程文件系統”與安裝“本地文件系統”沒有什麼區別;對用戶來說,他將不會知道自己訪問的文件究竟是在本地還是在遠程主機上面。

Mount命令的語法是:
mount host:/test /temp/test
其中host是遠程Linux主機的機器名,也可以換成IP地址,接下來一個“:”,後面緊跟着的test是遠程主機上面允許共享的目錄名。/temp/test是本地的一個目錄名。


這條命令的意思是:將主機名爲host上的test目錄安裝到本地主機上面的/temp/test目錄中,以後只要進入/temp/test就可以訪問共享資源了。


任何一臺Linux機器即既可以作爲NFS 客戶也可以作爲NFS服務器,也就是說它可以向其他機器輸出文件系統,也可以安裝其他機器輸出的文件系統。擁有實際的物理磁盤並且通過NFS將這個磁盤共享的主機叫NFS文件服務器,通過NFS訪問遠程文件系統的主機叫NFS客戶機。上面的這條mount實際上就是在NFS客戶機上所執行的命令,下面我們來看看NFS服務器的配置。假設我們配置的NFS服務器的IP地址是192.168.0.1。
編輯/etc/exports文件 它的格式是:Directory hostname(options)。其中(options)是可選的,比方說“/mnt/test 192.168.0.10”表示允許主機(192.168.0.10) mount /mnt/test目錄。
如果後面加上選項,如“/mnt/test 192.168.0.10(ro)anotherhost(rw)”則表示僅僅允許192.168.0.10以只讀方式安裝/mnt/test,但允許主機名爲anotherhost的計算機以讀寫方式安裝/mnt/test,缺省情況下爲ro方式。
在編輯exports文件時,有一點要注意,就是hostname不能是本地主機名或者本地主機的IP地址,換句話說,您不能夠在單機上進行NFS服務的測試。
啓動服務器端 在命令行下面輸入rpc.nfsd和rpc.mountd,啓動NFS守護進程。這時候用“netstat -a -n”命令就可以看見UDP的2049端口已經開始偵聽了。
連接共享資源 在IP地址爲192.168.0.10計算機上面進行mount連接,先在該計算機上面建立一個名爲/temp/test目錄,然後輸入命令:
mount 192.168.0.1:/mnt/test /temp/test
這樣,一個完整的NFS客戶和服務器之間的連接就建立成功了,我們可以用cd進入/temp/test來訪問192.168.0.1上面的共享資源了。

相關的一些命令:

showmout命令對於NFS的操作和查錯有很大的幫助.


showmout
-a :這個參數是一般在NFS SERVER上使用,是用來顯示已經mount上本機nfs目錄的cline機器。
-e :顯示指定的NFS SERVER上export出來的目錄。
例如:
showmount -e 192.168.0.30
Export list for localhost:
/tmp *
/home/linux *.linux.org
/home/public (everyone)
/home/test 192.168.0.100

 

exportfs命令:
如果我們在啓動了NFS之後又修改了/etc/exports,是不是還要重新啓動nfs呢?這個時候我們就可以用exportfs命令來使改動立刻生效,該命令格式如下:
exportfs [-aruv]
-a :全部mount或者unmount /etc/exports中的內容
-r :重新mount /etc/exports中分享出來的目錄
-u :umount 目錄
-v :在 export 的?r候,將詳細的信息輸出到屏幕上。
具體例子:
[root @test root]# exportfs -rv <==全部重新 export 一次!
exporting 192.168.0.100:/home/test
exporting 192.168.0.*:/home/public
exporting *.the9.com:/home/linux
exporting *:/home/public
exporting *:/tmp
reexporting 192.168.0.100:/home/test to kernel

exportfs -au <==全部都卸載了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章