本文主要是介绍用于linux与开发板之间下载文件的tftp配置详细总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
网上有很多关于tftp的配置,但是都不是很全,往往忽略细节,而linux下的实验细节决定成败,本文旨在给予刚接触linux与嵌入式开发的朋友以指点。若感觉对自己有帮助,记得留言顶。有问题我会上网时尽快恢复。
开发板:mini2440
Uboot:必须支持tftp-client
Linux:企业版,内核2.6.18
特别注意:
tftp配置前准备:关掉xp防火墙;将linux操作系统切换到英文界面(必须重启);设置虚拟机上网方式为bridge(在虚拟机下设置);配置linux静态IP(system-administration-network,最好不要用ifconfig设置)并重启网卡
TFTP是用来下载远程文件的最简单网络协议,基于UDP协议完成。
若不知道自己安装tftp还是没有:#setup –system services查看有没有tftp服务,有就选中,没有就安装。
(1)安装TFTP-server和tftp-client
# mount /mnt/cdrom
# cd /mnt/cdrom/RedHat/RPMS
# rpm -ivh tftp-*.i386.rpm
# cd ~
# umount /mnt/cdrom
(2)修改文件
# vi /etc/xinetd.d/tftp
service tftp
{
socket_type =dgram
protocol
wait
user
server
server_args =-s /home/liuby/tftpboot -c
disable
per_source
cps
flags
}
(3)
建立TFTP Server 服务器
# mkdir -m 777 /home/liuby/tftpboot(这里必须和上面“server_args =-s /home/liuby/tftpboot –c”
# service xinetd restart
(4)在命令行下setup 在system services中(或ntsysv)选择tftp,命令行lokkit关闭firewall
(5)重新启动TFTP
# service xinetd restart
查看tftp是否启动的命令:
#netstat -a |grep tftp
udp
说明端口已经启动。
(6)测试
在你tftp服务器目录下防止一个文件
# tftp 192.168.0.2 (你的主机ip)
tftp>get
tftp>put
tftp>q
注意:如果出现tftp command not found 就说明你linux主机没有安装tftp-client就是tftp客户端,tftp分为tftp-server和tftp-clien
(7)目标板测试(以下目标板上操作)
1、Ping 192.168.0.2(你的主机ip)如果 XXX is alive 就是通了。
2、使用u-boot命令printenv查看环境变量:
#printenv
3、在u-boot环境中分别输入以下命令:
#setenv serverip 192.168.0.2(回车)
#setenv ipaddr 192.168.0.3(回车)
#setenv ethaddr 00:01:02:03:04:05(回车)
#saveenv(回车)
假设服务器/home/liuby/tftpboot下有uImage
#tftp uImage 31000000(你要下载到开发板的内核的内存地址)
#下载成功后 bootm 31000000
后记:以上红色字体一定要注意!如果都做到了,你的
我希望转载能注明出处:http://blog.sina.com.cn/s/blog_6595c2490100t7ii.html
这篇关于用于linux与开发板之间下载文件的tftp配置详细总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!