1、在Ubuntu上安装tftp-hpa和tftpd-hpa,命令如下:
sudo apt-get install tftp-hpa tftpd-hpa
sudo apt-get install tftp-hpa xineted
2、在用户目录下新建一个目录文件夹来存放文件,并赋予tftpboot文件夹权限命令如下:
mkdir /home/u/linux/tftpboot
chmod 777 /home/u/linux/tftpboot
3、最后配置tftp,安装完成以后新建文件/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/u/linux/tftpboot
disable = no
per_source = 11
cps = 100 2
flags =IPV4
}
4、之后启动tftp服务,命令如下:
sudo service tftpd-hpa start
5、打开/etc/default/tftp-hpa文件,将其修改为:
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/u/linux/tftpboot"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="-l -c -s"
其中 TFTP_DIRECTORY就是上面创建的tftp文件夹目录,以后通过这个文件夹进行传输。
6、重启tftp服务器:
sudo service tftpd-hpa restart
至此tftp服务器已经搭建好了,在uboot中tftp的命令格式为:
tftpboot [loadAddress] [[hostIPaddr:]bootfilename]
其中loadAddress 是文件在 DRAM 中的存放地址 ,[[hostIPaddr:]bootfilename]是要从 Ubuntu 中下载的文件(只输入要下载的文件名即可),例如:tftp 80800000 zImage就是将 tftpboot 文件夹里面的 zImage 文件下载到开发板 DRAM 的 0X80800000 地址处。