在嵌入式Linux開發的時候,常常需要使用NFS以方便程序的調試。使用NFS,用戶可以將板子要用到的根文件系統放在主機目錄下,開發板則通過以太網掛載到這個目錄並將這個目錄下的文件作爲根文件系統的內容,這樣用戶的程序更新後不必重新燒寫板子的根文件系統便能被重新使用,這點能夠大大加快程序的調試。
Ubuntu下安裝NFS服務器的步驟如下:
1.進行NFS服務器端與客戶端的安裝:
apt-get install nfs-kernel-server nfs-common portmap
安裝客戶端的作用是可以在本機進行NFS服務的測試
2.配置portmap
兩種方法任選一種就可以:
(1) emacs 、etc/default/portmap
去掉 -i 127.0.0.1
(2) dpkg-reconfigure portmap
運行後選擇“否”
另外很重要的一點,要用sysv-rc-conf工具查看一下當前nfs和portmap的狀態,若是off,則用sysv-rc-conf portmap on和sysv-rc-conf nfs-kernel-server on打開
3.配置掛載目錄和權限
emacs /etc/exports
在最後一行添加
/nfs *(rw,sync)
解釋一下:
/nfs是NFS的共享目錄,*表示任何IP都可以共享這個目錄,你可以改爲受限的IP,rw表示的是權限,sync是默認的
4.更新exports文件
只要你更新了/etc/exports,你可以通過 exportfs -r 來更新這個文件
5.重啓NFS服務
/etc/init.d/nfs-kernel-server restart 重啓NFS服務
6.進行測試
嘗試一下掛載本地磁盤(我的Ubuntu系統IP爲192.168.0.3,將 /nfs 掛載到 /mnt)
mount 192.168.0.3:/nfs /mnt
運行df 查看結果
umount /mnt
若出現錯誤:mount.nfs: DNS resolution failed for 192.168.0.3 : Name or service not known
則刪除eth0網絡連接,重新建立即可