免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7680 | 回复: 2
打印 上一主题 下一主题

nfs:server ***** not responding, still trying [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-20 09:44 |只看该作者 |倒序浏览
首先我不得不承认,这个问题花费了我一天多的时间,终于在今天早晨搞定了,做个备忘吧,也为出现同样问题的人留个参考!
 
首先,说明下,我的tftp以及NFS都配置成功了,都做过测试,如何设置tftp和NFS,以及如何测试就不说了,网上这方面的文章一大堆。
 
为了测试自己做的根文件系统是否能够正常运行,决定让开发板通过NFS启动,并根据uboot对bootargs的规定,做了如下设置:
 
$ setenv ipaddr 192.168.109.27  (开发板IP)
$ setenv serverip 192.168.109.33 (NFS服务器IP)
$ setenv gatewayip 192.168.109.254
$ setenv netdev eth0
$ setenv hostname zlg
$ setenv rootpath /arm3250/rootfs  (NFS服务器上的用于启动系统的根文件目录)
$ saveenv
 
以上这些都设好以后,再设置了启动参数bootargs,因为原来开发里已经有根文件系统了,为了保持原来的bootargs,让开发板可以从自己的根文件系统启动,要保持flash里的bootargs不变,所以这里设置好bootargs之后,并不保存,目标板reset之后,就失效。
 
$ setenv bootargs  root=/dev/nfs rw console=ttyS0,115200 nfsroot=$(serverip):$(rootpath) ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname):$(netdev):off
 
关于bootargs的使用会在下篇博文里介绍。
还需要说明的是根文件系统已经拷贝到/arm3250/rootfs  下。
 
上述设定完成后,就可以启动系统了
$ run yboot
 
结果出现了以下的情况:
IP-Config: Complete:
     device=eth0, addr=192.168.109.27, mask=255.255.255.0, gw=192.168.109.254,
     host=zlg, domain=, nis-domain=(none),
     bootserver=192.168.109.33, rootserver=192.168.109.33, rootpath=
Looking up port of RPC 100003/2 on 192.168.109.33
Looking up port of RPC 100005/1 on 192.168.109.33
VFS: Mounted root (nfs filesystem).
Freeing init memory: 108K
init started: BusyBox v1.11.2 ()
starting pid 321, tty '': '/etc/rc.d/rcS'
Mounting /proc and /sys
Starting the hotplug events dispatcher udevd
Synthesizing initial hotplug events
Setting the hostname to zlg
Mounting filesystems
mount: mounting usbfs on /proc/bus/usb failed: No such file or directory
Running sysctl
Setting up networking on loopback device:
Setting up networking on eth0:
nfs: server 192.168.109.33 not responding, still trying
 
并且就死在这了,开始考虑是什么问题,难道是我做的根文件系统有问题,启动不了,于是我把根文件系统换成板子自带的根文件系统,这个保证是好的哦,运行了一下之后,发现还是这个问题,我疯掉。。。
 
通过对上述信息的检查可以看出NFS服务器已经挂载成功,NFS服务器设置本身应该是没有问题的,那么问题应该还是处在根文件系统上,于是就上网搜问题的解决办法。
 
网上关于nfs: server ******* not responding, still trying的帖子倒也不少,大致有两个版本,一个就说要改nfs的协议,从udp该到tcp,然后一个就是该每次传输的块,更改rsize和wsize,两种方法大都集中在丢包上。更主要的问题是,这些帖子多是针对系统启动后,两个系统之间进行NFS传输出现的not responding,和我这个情况根本就不一样。
 
然后就在网上海搜,凡是有点关系的帖子我都看看,这其中包括好好地看了一下bootargs的设置问题(这也是收获吧~~)
 
在其中一篇文章中有人提到,可能是根文件系统启动的时候更改了目标板的ip,当时想这不应该,ip我通过bootargs已经传给内核了,而且也已经成功挂载了,要是更改了就不能挂载了。我晕死,当时犯浑了,挂载是发生在启动前的,是系统启动的时候改的,所以才导致系统无法启动的。
 
后来在看到这两篇几乎没几句话的帖子时,又回想了上述的话,才幡然醒悟,问题可能就出现在这里啦。
 
于是我翻找上述那一大段的信息找到了starting pid 321, tty '': '/etc/rc.d/rcS'
这是系统启动时执行的第一个文件rcS,我想问题就在这里啦。于是在主机里,打开rcS,并没有发现更改IP的地方啊,但是我看到在这个文件里有句话
#load the configuration information
. /etc/rc.d/rc.conf(注意,这是在开发板上的根文件目录里)
这就是系统启动的时候加载的第一个配置文件了,问题应该就出现在这里了,打开这个文件惊奇的发现如下我期待已久的信息:
export INTERFACE0="eth0"
export IPADDR0="192.168.7.236"
export NETMASK0="255.255.255.0"
export BROADCAST0="192.168.7.255"
export GATEWAY0="192.168.7.1"
export NAMESERVER0="192.168.7.1"
看来就是它了,于是我按照自己的配置更改了选项:

export INTERFACE0="eth0"
export IPADDR0="192.168.109.101"
export NETMASK0="255.255.255.0"
export BROADCAST0="192.168.109.255"
export GATEWAY0="192.168.109.254"
export NAMESERVER0="192.168.109.254"
改好之后,保存。然后,回到Tera Term下,重启开发板,成功啦
 
starting pid 321, tty '': '/etc/rc.d/rcS'
Mounting /proc and /sys
Starting the hotplug events dispatcher udevd
Synthesizing initial hotplug events
Setting the hostname to zlg
Mounting filesystems
mount: mounting usbfs on /proc/bus/usb failed: No such file or directory
Running sysctl
Setting up networking on loopback device:
Setting up networking on eth0:
Adding static route for default gateway to 192.168.109.254:
route: SIOCADDRT: File exists
Setting nameserver to 192.168.109.254 in /etc/resolv.conf:
Starting inetd:
Starting the port mapper:
Starting the ssh server:
starting pid 632, tty '': '-/bin/sh'
[root@zlg /]#
 
至此,此问题得到完满解决!在这个解决问题的过程中是我认识到,遇到问题一定要多加思考,不能想当然的认为怎么样,要根据已有情况去做分析、判断。
 
 
 
 
 
 
 

论坛徽章:
0
2 [报告]
发表于 2013-08-01 11:31 |只看该作者
很好的文章!

论坛徽章:
5
丑牛
日期:2014-01-21 08:26:26卯兔
日期:2014-03-11 06:37:43天秤座
日期:2014-03-25 08:52:52寅虎
日期:2014-04-19 11:39:48午马
日期:2014-08-06 03:56:58
3 [报告]
发表于 2013-08-06 11:33 |只看该作者
很好的文章!遇到问题一定要多加思考分析、判断。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP