設備:一台服務器和一台客戶端,這里我們把裝在PC機上的RedHat作為服務器,而客戶端則是嵌入式linux開發板。
環境:開發板已啟動,連接好串口和網線,串口用於下發命令控制開發板,網線則用於NFS
1、確認Redhat上裝好了NFS軟件包
在終端輸入
[root@localhost examples]# rpm -q nfs-utils
nfs-utils-1.0.9-24.el5
如果出現以上結果,表示已經安裝好了NFS,否則,請先安裝nfs-utils軟件包。
2、配置NFS服務器
[root@localhost examples]# vi /etc/exports
打開配置文件后,一般空空如也,自己寫,寫入以下配置信息:
/home/example/rootfs 192.168.2.*(rw,sync,no_root_squash)
解析:
/home/example/rootfs -->共享的文件夾路徑
192.168.2.* -->允許訪問的IP號,當然也可以具體指定一個,比如192.168.2.11
(rw,sync,no_root_squash) -->權限等,具體參數的意思可以百度
所以配置信息還是比較簡單。
3、啟動/重啟NFS服務器
不管NFS事先有沒有啟動,都可以用重啟命令,如下:
[root@localhost examples]# /etc/init.d/nfs-kernel-server restart
OK,至此服務器端配置完畢,接下來在客戶端開發板上使用,即所謂的掛載文件系統。
在掛載之前,需確認網絡是否通了。將網線連上,通過ping命令確保網絡正常,比如服務器IP設置為192.168.2.22,開發板IP設置為192.168.2.11,
兩者子網掩碼均為255.255.255.0,這樣在開發板上通過命令ping 192.168.2.22即能看到響應。
4、掛載文件系統
在開發板上的mnt文件夾下新建nfs文件夾,用於映射服務器上共享的文件夾,當然你也可以在其他地方建,只要輸入命令正確,命令如下:
mount -t nfs 192.168.2.22:/home/example/rootfs /mnt/nfs
解析:
mount -t nfs -->掛載命令,表示掛載NFS共享的文件夾
192.168.2.22:/home/example/rootfs -->服務器端共享的文件夾路徑,格式為 IP:/共享文件夾路徑
/mnt/nfs -->映射到本地的文件夾,即客戶端開發板上的文件夾。
注:如果輸入命令,出現如下錯誤“svc: failed to register lockdv1 RPC service (errno 111) ”,則改用如下命令:
mount -t nfs -o nolock 192.168.2.22:/home/example/rootfs /mnt/nfs
5、掛載完畢,使用
掛載完畢后,在服務端對共享文件夾里的操作,均能在客戶端中映射的文件夾中看見。
Exa.
往服務端共享文件夾中拷貝一個文件,[root@localhost examples]# cp test.c rootfs/
則在客戶端能也看見,在客戶端命令:[root@localhost led]# cd /mnt/nfs/
[root@localhost nfs]# ls
test.c
OK,至此掛載完畢,其實就是通過NFS共享了一個文件夾。
