解决一个NFS启动rootfs失败的问题

前言

        遇到问题不要慌,遇到出错,相信这些问题大神们都已经给出答案了。本次遇到的问题,原本以为是内核问题,最后发现是bootargs的问题。

一 问题描述

        今天使用正点原子的内核测试,报错如下所示:

[    7.803338] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[    7.823407] Sending DHCP requests ......
[   75.503280] random: nonblocking pool is initialized
[   82.473252]  timed out!
[   82.507788] IP-Config: Retrying forever (NFS root)...
[   82.723964] fec 20b4000.ethernet eth0: Freescale FEC PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=20b4000.ethernet:01, irq=-1)
[   82.736149] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   82.953974] fec 2188000.ethernet eth1: Freescale FEC PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=20b4000.ethernet:00, irq=-1)
[   82.983383] Sending DHCP requests .
[   86.033676] fec 2188000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
[   86.323251] ..... timed out!
[  174.317789] IP-Config: Retrying forever (NFS root)...
[  174.533877] fec 20b4000.ethernet eth0: Freescale FEC PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=20b4000.ethernet:01, irq=-1)
[  174.546088] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[  174.763960] fec 2188000.ethernet eth1: Freescale FEC PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=20b4000.ethernet:00, irq=-1)
[  174.793415] Sending DHCP requests ..
[  177.843685] fec 2188000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
[  182.363252] .... timed out!

二 问题排查

1 经过查验内核具备NFS启动服务。

2 那就可能是我写的bootargs有问题

我先前写的bootargs是这样的

setenv bootargs 'console=ttymxc0,115200 root=/dev/nfs nfsroot=192.168.0.11:/home/lkmao/nfsroot/zdyz,proto=tcp rw ip=192.168.0.4:192.168.0.11:192.168.0.1:255.255.255.0:::'

这个不是正点原子推荐的写法,改成正点原子推荐的写法,就是结尾改成::eth0:off

setenv bootargs 'console=ttymxc0,115200 root=/dev/nfs nfsroot=192.168.0.11:/home/lkmao/nfsroot/zdyz,proto=tcp rw ip=192.168.0.4:192.168.0.11:192.168.0.1:255.255.255.0::eth0:off'

这是报错如下:

[    4.493336] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   14.493204] Waiting up to 110 more seconds for network.
[   24.493200] Waiting up to 100 more seconds for network.
[   34.493198] Waiting up to 90 more seconds for network.
[   44.493198] Waiting up to 80 more seconds for network.
[   54.493198] Waiting up to 70 more seconds for network.
[   64.493205] Waiting up to 60 more seconds for network.
[   74.493207] Waiting up to 50 more seconds for network.
[   84.493197] Waiting up to 40 more seconds for network.
[   94.493197] Waiting up to 30 more seconds for network.
[  104.493196] Waiting up to 20 more seconds for network.
[  114.493191] Waiting up to 10 more seconds for network.
[  120.473210] random: nonblocking pool is initialized
[  124.493197] Waiting up to 0 more seconds for network.
[  124.513458] IP-Config: Complete:
[  124.516716]      device=eth0, hwaddr=32:7e:21:c7:32:66, ipaddr=192.168.0.4, mask=255.255.255.0, gw=192.168.0.1
[  124.526827]      host=192.168.0.4, domain=, nis-domain=(none)
[  124.532589]      bootserver=192.168.0.11, rootserver=192.168.0.11, rootpath=
[  124.539750] gpio_dvfs: disabling
[  124.542992] can-3v3: disabling
[  124.546404] ALSA device list:
[  124.549395]   #0: wm8960-audio
[  237.603613] VFS: Unable to mount root fs via NFS, trying floppy.
[  237.610231] VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6
[  237.617598] Please append a correct "root=" boot option; here are the available partitions:
[  237.626041] 0100           65536 ram0  (driver?)
[  237.630688] 0101           65536 ram1  (driver?)
[  237.635451] 0102           65536 ram2  (driver?)
[  237.640092] 0103           65536 ram3  (driver?)
[  237.644805] 0104           65536 ram4  (driver?)
[  237.649446] 0105           65536 ram5  (driver?)
[  237.654158] 0106           65536 ram6  (driver?)
[  237.658858] 0107           65536 ram7  (driver?)
[  237.663554] 0108           65536 ram8  (driver?)
[  237.668198] 0109           65536 ram9  (driver?)
[  237.672838] 010a           65536 ram10  (driver?)
[  237.677591] 010b           65536 ram11  (driver?)
[  237.682317] 010c           65536 ram12  (driver?)
[  237.687072] 010d           65536 ram13  (driver?)
[  237.691800] 010e           65536 ram14  (driver?)
[  237.696577] 010f           65536 ram15  (driver?)
[  237.701313] b300        31166976 mmcblk0  driver: mmcblk
[  237.706681]   b301          262144 mmcblk0p1 cebdaeb9-01
[  237.712017]   b302         3870720 mmcblk0p2 cebdaeb9-02
[  237.717377] b308         7634944 mmcblk1  driver: mmcblk
[  237.722712]   b309          131072 mmcblk1p1 a46621a2-01
[  237.728071]   b30a         7493632 mmcblk1p2 a46621a2-02
[  237.733424] b320             512 mmcblk1rpmb  (driver?)
[  237.738672] b318            4096 mmcblk1boot1  (driver?)
[  237.744055] b310            4096 mmcblk1boot0  (driver?)
[  237.749390] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
[  237.757667] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)

因为正点原子的ALPHA开发板有两个网卡,所以,这个就是网络不通,继续修改bootargs,将eth0改成eth1,如下所示:

setenv bootargs 'console=ttymxc0,115200 root=/dev/nfs nfsroot=192.168.0.11:/home/lkmao/nfsroot/zdyz,proto=tcp rw ip=192.168.0.4:192.168.0.11:192.168.0.1:255.255.255.0::eth1:off'

改完后问题就解决了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千册

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值