掛載開發板根nfs檔案系統的時候,發現了下面的問題:
looking up port of rpc 100003/2 on 192.168.2.109
rpcbind: server 192.168.2.109 not responding, timed out
root-nfs: unable to get nfsd port number from server, using default
looking up port of rpc 100005/1 on 192.168.2.109
rpcbind: server 192.168.2.109 not responding, timed out
root-nfs: unable to get mountd port number from server, using default
------------------------------------------------------------------------------
出現這個問題,經過檢查,原來是linux server的防火牆沒有關。
1. 報這種錯,防火牆是原因之一。
但不一定就是這乙個原因,還有
2. 開發板的bootloader的 bootargs沒有設定正確導致找不到server 的nfs,一般格式如下:
set bootargs noinitrd root=/dev/nfs nfsroot=192.168.2.109:/home/fs/work/nfs_root/fs_qtopia ip=192.168.2.111:192.168.2.109:192.168.2.1:255.255.255.0::eth0:off init=/linuxrc console=ttysac0
3. 另外掛程式載nfs需要啟動nfs服務,並設定好nfs exports目錄,
/etc/init.d/nfsstart[root@localhost fs]# vi /etc/exports
/home/fs/work/nfs_root/fs_mini_mdev *(rw,sync,no_root_squash,no_subtree_check)
/home/fs/work/nfs_root/fs_qtopia *(rw,sync,no_root_squash,no_subtree_check)
4. 不同開發板,不同核心,不同uboot的掛載命令不盡相同,不能盲目照搬。
我在使用s5pc100開發板的時候,nfs掛載錯誤如下:
usbhid: usb hid core drivertcp cubic registered
net: registered protocol family
17looking up port of rpc
100003/2 on 192.168.2.109
rpcbind: server
192.168.2.109 not responding, timed out
root-nfs: unable to get nfsd port number from server, using
default
looking up port of rpc
100005/1 on 192.168.2.109
rpcbind: server
192.168.2.109 not responding, timed out
root-nfs: unable to get mountd port number from server, using
default
root-nfs: server returned error -101
while mounting /work/farsight/nfs_root/rootfs
vfs: unable to mount root fs via nfs, trying floppy.
vfs: cannot open root device
"nfs
" or unknown-block(2,0)
檢查我的bootargs設定,
bootargs=root=/dev/nfsnfsroot=192.168.2.109:/work/farsight/nfs_root/rootfs init=/linuxrc console=ttysac0
經過一番比對,發現應該是:
bootargs=root=nfsnfsroot=192.168.2.109:/work/farsight/nfs_root/rootfs ip=192.168.2.200 init=/linuxrc console=ttysac0
這一點不同於jz2440開發板。
nfs服務以及mount命令使用
1、在a機上啟動nfs和rpc服務
/etc/init.d/portmap start
/etc/init.d/nfs start
2、檢查nfs的執行級別:
chkconfig --list portmap
chkconfig --list nfs
3、根據需要設定在相應的執行級別自動啟動nfs:
chkconfig --level 235 portmap on
chkconfig --level 235 nfs on
--檢測nfs 的rpc 註冊狀態
rpcinfo -u 主機名或ip 位址 程序
[root@tmg133 data3]#-- rpcinfo -u 192.168.2.109 nfs
program 100003 version 2 ready and waiting
program 100003 version 3 ready and waiting
program 100003 version 4 ready and waiting
[root@tmg133 data3]# --rpcinfo -u 192.168.2.109 mount
program 100005 version 1 ready and waiting
program 100005 version 2 ready and waiting
program 100005 version 3 ready and waiting
--檢視共享目錄和引數設定 cat /var/lib/nfs/etab
用命令列方式關閉centos防火牆
臨時性的完全關閉防火牆,可以不重啟機器:
#/etc/init.d/iptables status ## 檢視防火牆狀態
#/etc/init.d/iptables stop ## 本次關閉防火牆
#/etc/init.d/iptables restart ## 重啟防火牆
嵌入式開發板 嵌入式Linux開發板的選擇
很多電子軟體工程師使用stm32系列的微控制器入門,學習linux是技術公升級的最好選擇之一。很多小夥伴對linux的認知為只知道它是乙個開源作業系統,有乙個核心,僅此而已。但是掌握了linux技術之後卻能夠在技術領域大有一番作為。我們來看一下學習linux之後的一些出路 那麼在進行linux知識的...
嵌入式Linux開發使用NFS掛載根檔案系統
在嵌入式開發中使用nfs 掛在根檔案系統進行應用程式和驅動的除錯是必備技能,在程式除錯ok後可以從nfs檔案系統切換initramfs 基於記憶體 yaffs 基於nand flash jiffs 基於nor flash 等進行程式的批量燒寫。首先我們先配置pc端 ubuntu 1.安裝nfs 伺服...
nfs掛載到開發板
nfs掛載到開發板 一直沒有什麼寫技術文章的好習慣,哈哈,只是有的時候自己解決了一些問題自娛自樂,自顧自的得意一會,然後今天想把今天碰到的問題以及解決的過程寫出來,希望能給一些剛好碰到該問題的童鞋一些幫助。好了廢話不多說了,以前一直在看,現在自己也動手一會,哈哈 二 配置 etc exports檔案...