本文共 1226 字,大约阅读时间需要 4 分钟。
前言
在uboot中,tftp 命令的作用和 nfs 命令一样,都是用于通过网络下载东西到 DRAM 中,只是 tftp 命令使用的 TFTP 协议, Ubuntu 主机作为 TFTP 服务器。sudo apt-get install tftp-hpa tftpd-hpasudo apt-get install xinetd
mkdir /home/ceremony/linux/tftpbootchmod 777 /home/ceremony/linux/tftpboot
打开/etc/xinetd.d/tftp,如果没有/etc/xinetd.d 目录的话自行创建, 然后在里面输入如下内容:
server tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /home/ceremony/linux/tftpboot/ disable = no per_source = 11 cps = 100 2 flags = IPv4 }
sudo service tftpd-hpa start
打开/etc/default/tftpd-hpa,将其修改为如下内容:
TFTP_USERNAME="tftp"TFTP_DIRECTORY="/home/ceremony/linux/tftpboot"TFTP_ADDRESS=":69"TFTP_OPTIONS="-l -c -s"
TFTP_DIRECTORY 就是我们上面创建的 tftp 文件夹目录
sudo service tftpd-hpa restart
到此,tftp搭建完成
将tftp中的zimage下载到开发板:
这里要注意,要讲文件权限设置为777,否者可能会出现一些问题。
命令格式:
tftpboot [loadAddress] [[hostIPaddr:]bootfilename]
看 起 来 和 nfs 命 令 格式 一 样 的 , loadAddress 是 文 件 在 DRAM 中 的存 放 地 址 ,[[hostIPaddr:]bootfilename]是要从 Ubuntu 中下载的文件。但是和 nfs 命令的区别在于, tftp 命令不需要输入文件在 Ubuntu 中的完整路径,只需要输入文件名即可。比如我们现在将 tftpboot 文件夹里面的 zImage 文件下载到开发板 DRAM 的 0X80800000 地址处,命令如下:
tftp 80800000 zImage可以看到,已经下载成功了。
转载地址:http://yjtii.baihongyu.com/