Ubuntu掛載NFS步驟(arm 6410開發板)

關於掛載NFS文件系統的問題都遇到過,別笑話。燒個Linux系統,一鍵燒寫和USB燒寫共不下十來次!:L (我也是小小菜鳥一個)
昨天晚上終於掛載成功,就把我是怎樣掛載成功的以及一些問題的解決和注意事項和大家分享。希望對那些沒有掛載成功的人有所幫助。
首先掛載前,請仔細檢查以下硬件設備是否都連接好:
1、電源線插上
2、串口線連接好開發板COM0和PC機
3、USB電纜連接開發板和PC機
 

4、網線插上!
其中最容易忽略的就是網線沒有插上,導致像這樣的問題一直沒有解決
rpcbind: server x.x.x.x not responding, timed out
Root-NFS: Unable to get mountd port number from server, using default
Root-NFS: Server returned error -5 while mounting /home/glorin/sharetmp/filesys
針對這種問題,有兩個地方要注意,除了上面的網線沒有插上外,另外的就是主機IP(我的是虛擬機中的Ubuntu的IP)和開發板的IP不在同一

個網段內。
解決方法1.改主機IP;2.改開發板IP
那麼怎麼才知道開發板IP?呵呵,我是菜鳥,開始沒有弄清楚,所以就以爲是在設置uboo啓動參數(就是setenv bootargs .....)的時候就

是能夠設置開發板IP和主機IP在同一個網段,其實錯了!
正確的查看你開發板上的IP地址是在設置uboot啓動參數後利用printenv,在顯示你的設置uboot參數之前,前面幾行會有顯示
ipaddress=x.x.x.x
serverip=x.x.x.x
......
這其中的ipaddress纔是你開發板上真正的ip地址,即便你在setenv中改了,也是沒有改過來!你會發現這兩個ip是在同一個網段的。
好,這就是你要設置的兩個ip。既然如此,那就更改ip吧。(已經改好的不用改)
更改主機IP方法:
$ sudo vim  etc/network/interfaces
然後設置:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.20(參考,請寫剛纔與ipaddress同一網段內,或者乾脆寫serverip中的IP)
netmask 255.255.255.0
gateway 192.168.1.1(參考,這個應該知道該怎麼設置吧)
修改後重啓網絡配置:
sudo /etc/init.d/networking restart
完了保證設置完全正確,對於使用Ubuntu系統的人,請修改/etc/NetworkManager/nm-system-settings.conf
[main]
plugins=ifupdown,keyfile
[ifupdown]
managed=false
 將managed=ture改爲false。
 然後執行sudo /etc/init.d/network-manager restart,重新配置一下。(對於DNS,設置的話:sudo /etc/resolv.conf即可)
至此主機IP地址設置完成。
或者你不想修改主機IP,說我還想上網的。這個關係也不大,成功掛載及燒寫文件系統成功後再改回去就是了。
好吧,那就改開發板上的IP,這個你的先能夠進入開發板環境

2修改開發板IP,使其與主機(虛擬機中的Ubuntu)在同一個網段內。
進入開發板環境,也就是能夠使用開發板上的linux命令。
進入到/etc/init.d/目錄下會看到一個rcS文件,IP就是在這個文件修改的。
# vim /etc/init.d/rcS
加上一段:
/sbin/ifconfig eth0 192.168.1.10 netmask 255.255.255.0  broadcast 192.168.1.1  up

:wq 保存退出
注:以上地址僅供參考,請根據各自情況設置。
好了,那麼就開始掛載NFS。
1.設置共享目錄
例如我們採用/home/localhost/arm6410/root作爲NFS共享目
$ sudo mkdir arm6410
$ cd  arm6410
$ sudo mkdir root   
$ chmod 777 arm6410  
$ chmod 777 root
注:共享目錄和飛凌的不一樣,我想很多人也許出問題就在這裏。這就涉及到工作目錄和系統根目錄的問題了。記住的就是我們打開終端,然
後創建的目錄是在/home/XXX。你可以在根文件系統的home下看到XXX。


2.設置IP
上面已經講過怎麼設置,請參考。


3.配置NFS服務並啓動

安裝NFS

在虛擬機上新建一個終端,依次輸入以下命令:
sudo apt-get install portmap
sudo apt-get install nfs-kernel-server
sudo gedit /etc/exports

在彈出的文本編輯器中編輯exports文件,在最後一行添加:
/home/localhost/arm6410/root  *(rw,sync,no_root_squash)

啓動NFS服務

sudo /etc/init.d/portmap restart
sudo /etc/init.d/nfs-kernel-server restart


爲了測試主機上NFS服務是否啓動,先假設已經設置好主機的IP地址爲:192.168.1.20
sudo mount -t nfs  192.168.1.20:/home/localhost/arm6410/root   /mnt
然後用命令:ls  /mnt查看掛載內容(或者看能否在mnt目錄下看到arm6410/root目錄)
成功後卸載sudo umount  /mnt


4.在開發板上設置並保存啓動參數
在u-boot命令行下輸入以下命令設置u-boot啓動參數:
setenv bootargs "root=/dev/nfs nfsroot=192.168.0.20:/home/localhost/arm6410/root   ip=192.168.1.10:192.168.1.20:192.168.1.1:255.255.255.0:arm6410:eth0:off console=ttySAC0,115200"
saveenv
重新啓動開發板,Linux內核啓動後會自動掛載NFS文件系統。同樣注意的就是共享目錄。
以上步驟成功後,後面燒寫yaffs2文件按照手冊上即可。

相關文章參考:虛擬機中Ubuntu成功掛載NFS併爲arm11燒錄YAFFS2文件系統(http://www.linuxidc.com/Linux/2011-03/33927.htm
本篇文章來源於 Linux公社網站(www.linuxidc.com)  原文鏈接:http://www.linuxidc.com/Linux/2011-03/33927.htm

本篇文章來源於 Linux公社網站(www.linuxidc.com)  原文鏈接:http://www.linuxidc.com/Linux/2011-03/33926p2.htm

本篇文章來源於 Linux公社網站(www.linuxidc.com)  原文鏈接:http://www.linuxidc.com/Linux/2011-03/33926.htm


發佈了2 篇原創文章 · 獲贊 4 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章