本节我们继续介绍 U-Boot 的常用命令。
网络操作命令
进行网络操作之前,我们需要先配置一下 U-Boot 网络相关的环境变量,包括开发板的 IP 地址、MAC 地址、网关地址、子网掩码、服务器 IP 地址,并要保证开发板的 IP 地址和服务器 IP 地址在同一网段内:
setenv ipaddr 192.168.0.232 # U-Boor IP 地址
setenv ethaddr 00:aa:bb:cc:dd:ef # MAC 地址
setenv gatewayip 192.168.0.1 # 网关地址
setenv netmask 255.255.255.0 # 子网掩码
setenv serverip 192.168.0.120 # 服务器 IP 地址
saveenv # 保存环境变量
ping 命令
- 通过 ping 命令可以验证开发板的网络能否使用,是否可以和服务器进行通信:
=> ? ping
ping - send ICMP ECHO_REQUEST to network host
Usage:
ping pingAddress
- ping 服务器 IP 地址:
dhcp 命令
- dhcp 用于开发板自动获取 IP 地址:
=> ? dhcp
dhcp - boot image via network using DHCP/TFTP protocol
Usage:
dhcp [loadAddress] [[hostIPaddr:]bootfilename]
- 不仅如此,dhcp 命令还可以用来获取镜像文件
nfs 命令
- nfs(Network File System),即网络文件系统,通过 nfs 可以在计算机之间通过网络来分享文件资源,nfs 的用法:
=> ? nfs
nfs - boot image via network using NFS protocol
Usage:
nfs [loadAddress] [[hostIPaddr:]bootfilename]
- U-Boot 中 nfs 一般用来通过服务器下载 Linux 镜像文件,如 zImage,在使用 nfs 之前,服务器要开启 NFS 服务并保证开发板能够 ping 通服务器 IP 地址,zImage 存放在服务器 /home/alpha/nfs-work/ 目录下:
- 使用 nfs 命令将 zImage 下载到开发板的 0x80800000 地址处:
=> nfs 80800000 192.168.0.120:/home/alpha/nfs-work/zImage
tftp 命令
- tftp 和 nfs 一样也可以从服务器下载文件,只不过使用的是 TFTP 协议:
=> ? tftp
tftpboot - boot image via network using TFTP protocol
Usage:
tftpboot [loadAddress] [[hostIPaddr:]bootfilename]
- 同样在使用 tftp 之前服务器要开启 TFTP 服务,并保证开发板能够 ping 通服务器 IP 地址,使用 tftp 命令下载 zImage 到开发板的 0x80800000 地址处:
tftp 80800000 zImage
- 未完待续……