一、NFS介紹
NFS(Network File System,網絡文件系統)是由SUN公司發展,並於1984年推出的技術,用於在不同機器,不同操作系統之間通過網絡互相分享各自的文件。NFS設計之初就是爲了在不同的系統間使用,所以它的通訊協議設計與主機及操作系統無關。
NFS分服務器和客戶機,當使用遠端文件時只要用mount命令就可把遠端NFS服務器上的文件系統掛載在本地文件系統之下,操作遠程文件與操作本地文件沒有不同。NFS服務器所共享文件或目錄記錄在/etc/exports文件中。
嵌入式Linux開發中,會經常使用NFS,目標系統通常作爲NFS客戶機使用,Linux主機作爲NFS服務器。在目標系統上通過NFS,將服務器的NFS共享目錄掛載到本地,可以直接運行服務器上的文件。在調試系統驅動模塊以及應用程序,NFS都是十分必要的,並且Linux還支持NFS根文件系統,能直接從遠程NFSroot啓動系統,這對嵌入式Linux根文件系統裁剪和集成也是十分有必要的。
二、NFS服務器安裝和配置
Ubuntu 14.04上默認是沒有安裝NFS服務器的。下邊介紹具體的步驟
1、 首先要安裝NFS服務程序:
sudo apt-get install nfs-kernel-server
上述說明:安裝nfs-kernel-server時,apt會自動安裝nfs-common和portmap。
2、 配置 NFS 文件系統服務
sudo gedit /etc/exports
修改/etc/exports文件,
上述說明:NFS 服務端是通過讀入它的配置文件“/etc/exports”來決定所共享的文件目錄的、權限。
添加如下內容,
/opt/nfs *(rw,sync,no_root_squash,no_all_squash)
上述說明:比如我要將的/opt/nfs目錄讓*的ip共享, 則在該文件末尾添加上述語句。也可用192.168.1.*代替*,表示192.168.0開頭的ip都可以,這裏的*號表示第四段隨便是什麼都可以,當然要在255內。
然後,保存退出即可。
3、啓動NFS服務
sudo service nfs-kernel-server start
三、 本地驗證NFS服務器
將NFS服務器目錄掛載到本機另外一個目錄下,可以看到掛載點目錄下可以看到NFS服務器目錄中的文件。
sudo mount -t nfs 127.0.0.1:/opt/nfs /mnt
ls /mnt
sudo umount /mnt/
三、用開發板驗證NFS服務器是否可用
連好串口線、網線,啓動target開發板,進入系統。在命令提示符下,配置好開發板的IP地址和服務器IP地址。
target# mount -t nfs 192.168.1.3:/opt/nfs /mnt -o nolock
target# ls /mnt
target# umount /mnt/
掛載成功後,可以在開發板的/mnt目錄下看到NFS服務器上的文件。
說明:使用開發板與虛擬機安裝的客戶系統進行NFS掛載,需要將虛擬網卡設置爲Bridged模式,並建議使用靜態IP地址。
**********************************************************************************************************************************************************************
[附錄] etc/exports配置文件的書寫規範