我正在尝试通过NFS引导内核还在主机上的Beaglebone Black。我的印象是,我的主机没有必要成为DHCP服务器,手动IPv4静态IP就足够了。引导过程在以下内容上结束循环:
[ 357.280386] IP-Config: Retrying forever (NFS root)...
[ 357.285865] net eth0: initializing cpsw version 1.12 (0)
[ 357.393659] SMSC LAN8710/LAN8720 4a101000.mdio:00: attached PHY driver
[SMSC LAN8710/LAN8720] (mii_bus:phy_addr=4a101000.mdio:00, irq=-1)
[ 357.412716] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 360.563747] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
[ 360.572294] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 360.593014] Sending DHCP and RARP requests .....相关开机/引导程序d:
U-Boot# echo $nfs_bootcmd
tftp 0x81000000 zImage; tftp 0x82000000 am335x-boneblack.dtb; bootz 0x81000000 - 0x82000000
U-Boot# echo $bootargs
root=/dev/nfs rw ip=192.168.0.100:192.168.0.1:::eth0:off console=ttyO0 nfsroot=192.168.0.1:/nfsroot nfsrootdebug
U-Boot# echo $ipaddr
192.168.0.100
U-Boot# echo $serverip
192.168.0.1我/etc/出口:
/nfsroot *(rw,no_root_squash,no_subtree_check)以下是引导期间的串行输出:通过NFS引导Linux。
HW/SW设置:
是否有必要使我的主机成为dhcp服务器?我该怎么解决这个问题?
提前谢谢。
发布于 2017-10-25 16:06:52
我通过在我的主机上设置一个DHCP服务器来修复这个问题。在安装isc-dhcp-server (在Ubuntu上)之后,我修改了/etc/dhcp/dhcpd.conf,如下所示:
# /etc/dhcp/dhcpd.conf
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.0 192.168.0.254;
}
# the host name doesn't need to match anything.
host beaglebone {
# MAC address from U-boot's ethaddr env var
hardware ethernet 04:a3:16:f5:1a:56;
# The static IP to be allocated to the beaglebone device
fixed-address 192.168.0.100;
}这解决了问题,设备正确启动。
发布于 2017-11-20 02:08:44
您可以在保留静态网络配置的同时使用NFS引导设备,而不必使用DHCP。
使用上面提供的内容,它将类似于这样的东西。
U-Boot# echo $nfs_bootcmd
tftp 0x81000000 zImage; tftp 0x82000000 am335x-boneblack.dtb; bootz 0x81000000 - 0x82000000
U-Boot# echo $bootargs
root=/dev/nfs nfsroot=192.168.0.1:/nfsroot,nolock,nfsvers=3 nfsrootdebug nfsaddrs=192.168.0.100:192.168.0.1::255.255.255.0:::none rw console=ttyO0
U-Boot# echo $ipaddr
192.168.0.100
U-Boot# echo $serverip
192.168.0.1https://stackoverflow.com/questions/46918065
复制相似问题