1。linux 伺服器端nfs伺服器的配置
# vi /etc/exports
在該檔案裡新增如下內容:
/home/work 192.168.0.*(rw,sync,no_root_squash)
然後儲存退出。
/home/work也稱為伺服器輸出共享目錄。
括號內的引數意義描述如下:
rw:讀/寫許可權,唯讀許可權的引數為ro;
sync:資料同步寫入記憶體和硬碟,也可以使用async,此時資料會先暫存於記憶體中,而不立即寫入硬碟。
no_root_squash:nfs伺服器共享目錄使用者的屬性,如果使用者是root,那麼對於這個共享目錄來說就具有root的許可權。
接著執行如下命令,啟動埠對映:
# /etc/rc.d/init.d/portmap start
最後執行如下命令啟動nfs服務,此時nfs會啟用守護程序,然後就開始監聽client端的請求:
# /etc/rc.d/init.d/nfs start
使用者也可以重新啟動linux伺服器,自動啟動nfs服務。
在nfs伺服器啟動後,還需要檢查linux伺服器的防火牆等設定(一般需要關閉防火牆服務),確保沒有遮蔽掉nfs使用的埠和允許通訊的主機,主要是檢查linux伺服器iptables,ipchains等選項的設定,以及/etc/hosts.deny,/etc/hosts.allow檔案。
我們首先在linux伺服器上進行nfs伺服器的回環測試,驗證共享目錄是否能夠被訪問。在linux伺服器上執行如下命令:
# mount–t nfs 192.168.0.20:/home/work /mnt
# ls /mnt
命令將linux伺服器的nfs輸出共享目錄掛載到/mnt目錄下,因此,如果nfs正常工作,應該能夠在/mnt目錄看到/home/work共享目錄中的內容。
2。客戶端配置
在目標系統的linux shell下,執行如下命令來進行nfs共享目錄掛載:
# mkdir /mnt/nfs //建立linux伺服器輸出共享目錄的掛載點;
# mount–t nfs 192.168.0.20:/home/work /mnt/nfs–o nolock
# cd /mnt/nfs
# ls
此時,嵌入式目標系統端所顯示的內容即為linux伺服器的輸出目錄的內容,即linux伺服器的輸出目。
錄/home/work通過nfs對映到了嵌入式目標系統的/mnt/nfs目錄。使用者可以用增/刪/修改檔案的方式來驗證實際效果。mount命令中的192.168.0.20為linux伺服器的ip位址,/home/work為linux伺服器端所配置的共享輸出目錄,/mnt/nfs為嵌入式裝置上的本地目錄。
在開發過程中,來回輸入命令非常煩人,我寫了兩個簡單的指令碼來完成nfs的啟動,掛載。
host啟動nfs:
snfs
#!/bin/bash
ifconfig eth0 192.168.0.20
/etc/rc.d/init.d/portmap start
/etc/rc.d/init.d/nfs start
嵌入式目標機掛載nfs:
mnfs:
#!/bin/sh
mount -t nfs 192.168.0.20:/home/work/nfs /mnt/nfs -o nolock
echo「nfs ok!」
linux與linux之間共享目錄
nfs utils rpcbind nfs是基於sun公司的rpc通訊實現的,所以要裝rpcbind 這2包,在服務端和客戶端都需要安裝,並啟動服務。啟動 service rpcbind start service nfs start 順序不能變,nfs依存rpc,所以先啟動rpcbind後啟動nf...
linux與linux之間共享目錄
nfs utils rpcbind nfs是基於sun公司的rpc通訊實現的,所以要裝rpcbind 這2包,在服務端和客戶端都需要安裝,並啟動服務。啟動 service rpcbind start service nfs start 順序不能變,nfs依存rpc,所以先啟動rpcbind後啟動nf...
linux與linux之間共享目錄解析
nfs utils rpcbind nfs是基於sun公司的rpc通訊實現的,所以要裝rpcbind 這2包,在服務端和客戶端都需要安裝,並啟動服務。啟動 service rpcbind start service nfs start 順序不能變,nfs依存rpc,所以先啟動rpcbind後啟動nf...