OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8616|回复: 8

NFS根文件系统挂不上 的根本原因算是找到了!!!

[复制链接]

19

主题

49

帖子

0

精华

高级会员

Rank: 4

积分
728
金钱
728
注册时间
2015-8-20
在线时间
58 小时
发表于 2020-4-18 21:27:46 | 显示全部楼层 |阅读模式
1.先说现象
   和很多人一样,我想按照教程上通过NFS挂载网络根文件系统:tftp下载zImage--下载.dtb--内核启动--一切正常,然后就卡在了
…………………………
[    6.696891] ALSA device list:
[    6.699876]   #0: wm8960-audio
[    9.393006] ci_hdrc ci_hdrc.0: timeout waiting for 00000800 in 13

再等下去就是
[  312.163204] VFS: Unable to mount root fs via NFS, trying floppy.
[  312.169823] VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6
[  312.177198] Please append a correct "root=" boot option; here are the available partitions:
[  312.185635] 0100           65536 ram0  (driver?)
[  312.190285] 0101           65536 ram1  (driver?)
[  312.195056] 0102           65536 ram2  (driver?)
[  312.199701] 0103           65536 ram3  (driver?)
[  312.204404] 0104           65536 ram4  (driver?)
[  312.209045] 0105           65536 ram5  (driver?)
[  312.213738] 0106           65536 ram6  (driver?)
[  312.218382] 0107           65536 ram7  (driver?)
[  312.223068] 0108           65536 ram8  (driver?)
[  312.227711] 0109           65536 ram9  (driver?)
[  312.232351] 010a           65536 ram10  (driver?)
[  312.237104] 010b           65536 ram11  (driver?)
[  312.241830] 010c           65536 ram12  (driver?)
[  312.246584] 010d           65536 ram13  (driver?)
[  312.251312] 010e           65536 ram14  (driver?)
[  312.256062] 010f           65536 ram15  (driver?)
[  312.260798] b300        15558144 mmcblk0  driver: mmcblk
[  312.266157]   b301        15554048 mmcblk0p1 00000000-01
[  312.271492] b308         7634944 mmcblk1  driver: mmcblk
[  312.276853]   b309          131072 mmcblk1p1 d89851a8-01
[  312.282187]   b30a         7493632 mmcblk1p2 d89851a8-02
[  312.287544] b320             512 mmcblk1rpmb  (driver?)
[  312.292794] b318            4096 mmcblk1boot1  (driver?)
[  312.298161] b310            4096 mmcblk1boot0  (driver?)
[  312.303513] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
[  312.311793] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
很明显是根文件系统没有挂上去。
2.再说怎么解决
经过多方尝试(包括本坛内的各种解决方法都尝试过),几乎要崩溃到放弃。决定再试一次,左神说注意命令别敲错了,X神说是无线网和有线网之间问题。
老老实实把命令在txt文档下敲出来
setenv bootargs 'console=ttymxc0,115200 root=/dev/nfs rw nfsroot=192.168.0.120:/home/tutu/linux/nfs/rootfs proto=tcp ip=192.168.0.110:192.168.0.120:192.168.0.1:255.255.255.0::eth0ff'
关主机防火墙
关虚拟机防火墙
重启虚拟机NFS服务
(以上操作不知道是否有效,但做一遍不会导致根文件系统挂载失败)
再来搞IP
0.120是虚拟机IP(手动的绑定了)
0.110是开发板IP
主机IP也是手动绑定
开始用无线网,主机IP绑定192.168.0.100
(MMP,手动绑定主机IP还会断网,后面CMD(管理员模式运行)运行arp -d,重启,绑定成功)
尝试挂载根文件系统,失败--现象还是一样的。
(以上红色的都是徒劳)
0.120是虚拟机IP(手动的绑定了)
0.110是开发板IP
主机IP也是手动绑定
使用有线网,主机IP绑定192.168.0.200
(MMP,一样要CMD(管理员模式运行)运行arp -d,重启,绑定成功)
尝试挂载根文件系统,居然成功了。
(以上紫色是有用操作)
我还不确定是命令敲错了?
还是别的什么问题,拔了网线重连无线网,重启开发板,果然还是失败。
再还原有线网,断开无线,又成功了!
好,到这里我得出结论了,这个无线网和开发板连接NFS服务还是有问题的。
如果大家也遇到了tftp下载镜像文件和设备树文件成功,但是NFS网络根文件系统挂不上去,不妨试下我这种方法。
----------------------------------------------
好,重新捋一下,正式说:
a.主机使用有线网,并手动绑定IP。
b.将主机防火墙关掉

c.
将虚拟机防火墙关掉
d.将虚拟机NFS服务重启
e.手动敲一遍 setenv-----



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

134

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
301
金钱
301
注册时间
2020-5-8
在线时间
20 小时
发表于 2020-5-19 20:00:14 | 显示全部楼层
楼主,你这个开发板和电脑上网方式我有点蒙?是咋回事?咋连接的?
开发案和电脑直连然后电脑使用无线上网?这个无线是手机热点?到底咋回事呢?可否细说一下?
回复 支持 反对

使用道具 举报

19

主题

49

帖子

0

精华

高级会员

Rank: 4

积分
728
金钱
728
注册时间
2015-8-20
在线时间
58 小时
 楼主| 发表于 2020-6-8 10:58:24 来自手机 | 显示全部楼层
没了解你要问的问题。我的连接方式是:电脑通过有线网络连到路由器,开发板也是通过有线网络连到路由器。把他们的IP设置到同一个网段,这样就正常了。之前我是电脑通过无线网络连到路由器的,一直挂不到NFS。
回复 支持 反对

使用道具 举报

1

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2020-5-11
在线时间
15 小时
发表于 2020-7-23 15:49:47 | 显示全部楼层
我遇到的问题是,单独TFTP可以下载,NFS单独也可以下载,出现的现象和你的一样,就是挂载不成功,连接方式也是电脑有线到路由器,开发板有线到路由器,IP设置成了同一个网段,就是不成功,快崩溃了
回复 支持 反对

使用道具 举报

10

主题

73

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
459
金钱
459
注册时间
2016-7-7
在线时间
110 小时
发表于 2020-8-12 11:09:04 | 显示全部楼层
xilinxue 发表于 2020-7-23 15:49
我遇到的问题是,单独TFTP可以下载,NFS单独也可以下载,出现的现象和你的一样,就是挂载不成功,连接方式 ...

我也是这样,跟你的一模一样,boot tftp nfs都能用就是启动内核挂不上nfs根文件系统,老哥搞定没有?
回复 支持 反对

使用道具 举报

1

主题

14

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2018-1-23
在线时间
13 小时
发表于 2020-8-15 18:42:38 | 显示全部楼层
一般先在uboot模式ping下ip地址,可以通的话再看uboot变量设置是否正确,然后再看文件系统是否正确,这几个做下来基本都能搞定的
回复 支持 反对

使用道具 举报

1

主题

4

帖子

0

精华

新手入门

积分
10
金钱
10
注册时间
2022-6-29
在线时间
3 小时
发表于 2022-6-30 00:57:09 | 显示全部楼层
我也遇到了同样的问题。我是开发板直连的虚拟机。
后面把开发板连路由器上面了,虚拟机也桥接路由器上面了,也还是不行。
最后发现原因:就是uboot进入kernel后,开发板的网络连接会掉,在windows网络适配器界面可以看到掉的情况。
掉了就再也连不上了,然后会报上面的错误。

但是不知道怎么解决开发板进入kernel网络会掉的问题。毕竟开发板直连虚拟机和通过路由器连接虚拟机我都试了。
回复 支持 反对

使用道具 举报

0

主题

16

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
328
金钱
328
注册时间
2019-12-10
在线时间
55 小时
发表于 2023-1-24 09:44:24 | 显示全部楼层
我是把防火墙关了就好了
回复 支持 反对

使用道具 举报

10

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
265
金钱
265
注册时间
2018-8-10
在线时间
29 小时
发表于 2023-1-28 01:18:45 | 显示全部楼层
从另一篇帖子找到的,“看看这篇文章,原来是版本问题 https://blog.csdn.net/beetleinv/article/details/114916323” 按照教程需要在 /etc/default/nfs-kernel-server 内更改三句话,其中第二句话“RPCMOUNTDOPTS 里面的‘V’一定得大写”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 10:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表