1首先配置uboot的网络信息
setenv ipaddr 192.168.1.50
setenv ethaddr b8:ae:1d:01:00:00
setenv gatewayip 192.168.1.1
setenv netmask 255.255.255.0
setenv serverip 192.168.1.253 //非常重要tftp的服务器地址
saveenv

2dhcp 命令
dhcp 用于从路由器获取 IP 地址,前提得开发板连接到路由器上的,直接输入 dhcp 命令即可通过路由器获取到 IP 地址, DHCP 不单单是获取 IP 地址,其还会通过 TFTP 来启动 linux 内核.

3nfs 命令
我们一般使用 uboot 中的 nfs 命令将 Ubuntu 中的文件下载到开发板的 DRAM 中,在使用之前需要开启 Ubuntu 主机的 NFS 服务,因此要先安装并开启 Ubuntu 中的 NFS 服务,使用如下命令安装 NFS 服务:
sudo apt-get install nfs-kernel-server rpcbind

安装完成以后在用户根目录下创建一个名为“linux”的文件夹,以后所有的东西都放到这个“linux”文件夹里面,在“linux”文件夹里面新建一个名为“nfs”的文件夹,

在开发板上通过网络文件系统来访问 nfs 文件夹,要先配置 nfs,使用如下命令打开 nfs 配置文件/etc/exports:
sudo vi /etc/exports

打开/etc/exports 以后在最后面添加如下所示内容:
/home/wang/linux/nfs *(rw,sync,no_root_squash)

重启 NFS 服务,使用命令如下:
sudo /etc/init.d/nfs-kernel-server restart
nfs配置完成,可以将zImage放到nfs目录下了,使用nfs下载到uboot,如下:
nfs 80800000 192.168.1.253:/home
/wang/linux/nfs/zImage

命 令 中 的 “ 80800000 ” 表 示 zImage 保 存 地 址 ,
“192.168.1.253:/home/wang/linux/nfs/zImage”表示 zImage 在 192.168.1.253 这个主机中,
路径为/home/wang/linux/nfs/zImage。

4tftp
tftp 命令的作用和 nfs 命令一样,都是用于通过网络下载东西到 DRAM 中,只是 tftp 命令使用的 TFTP 协议, Ubuntu 主机作为 TFTP 服务器。因此需要在 Ubuntu 上搭建 TFTP 服务器,需要安装 tftp-hpa 和 tftpd-hpa,

sudo apt-get install tftp-hpa tftpd-hpa
sudo apt-get install xinetd

和 NFS 一样, TFTP 也需要一个文件夹来存放文件,在用户目录下新建一个目录,tftpboot 权限给777,最后配置 tftp,安装完成以后新建文件/etc/xinetd.d/tftp, 如果没有/etc/xinetd.d 目录的话自行创建,需要改的是server_args变量为自己的地址即可
在这里插入图片描述

完了以后启动 tftp 服务,命令如下:
sudo service tftpd-hpa start

打开/etc/default/tftpd-hpa 文件,将其修改为如下所示内容:
地址同上需要修改
在这里插入图片描述
最后输入如下命令, 重启 tftp 服务器:
sudo service tftpd-hpa restart

tftp 服务器已经搭建好了

uboot中使用 tftp 80800000 zImage,通过tftp将服务器上的zImage下载到DRAM 80800000地址上了。(最上面的serverip一定要配置正确,并且可以ping通)。

Logo

更多推荐