TFTP协议简介
TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现。嵌入式linux的tftp开发环境包括两个方面:
一是linux服务器端的tftp-server支持,二是嵌入式目标系统的tftp-client支持。
因为u-boot本身内置支持tftp-client,所以嵌入式目标系统端就不用配置了。
下面就详细介绍一下linux服务器端tftp-server的配置
1、查看tftp服务是否开启
netstat -a | grep tftp
显示结果为
udp 0 0 *:tftp *:*
表明服务已经开启,就表明tftp配置成功了。
2、tftp使用
复制一个文件到tftp服务器目录,然后在主机启动tftp软件,进行简单测试。
tftp 192.168.1.2
tftp>get
tftp>put
tftp>q
6、tftp命令用法如下
tftp your-ip-address
【TFTP相关操作命令】
connect:连接到远程tftp服务器
mode:文件传输模式
put:上传文件
get:下载文件
quit:退出
verbose:显示详细的处理信息
tarce:显示包路径
status:显示当前状态信息
binary:二进制传输模式
ascii:ascii传送模式
rexmt:设置包传输的超时时间
timeout:设置重传的超时时间
help:帮助信息
?:帮助信息
3、如果老是出现“AVC Denial, click icon to view”的错误,并不能传输文件,需要作如下修改
修改/etc/sysconfig/selinux,将SELINUX设定为disable
使用命令setenforce 0让selinux配置文件生效
4、Busybox中tftp命令的用法
命令格式为:
tftp [option] … host [port]
如果要下载或上传文件的话是一定要用这些option的。成都明诚科技。
-g表示下载文件(get)
-p表示上传文件(put)
-l表示本地文件名(local file)
-r表示远程主机的文件名(remote file)
例1:要从远程主机192.168.1.2上下载embedexpert,则应输入以下命令
tftp -g -r embedexpert 192.168.1.2
例2:
tftp 0x80600000 u-boot-with-spl.bin
把文件u-boot-with-spl.bin通过tftp加载到内存的0x80600000处
例3:
tftp 193.169.3.42tftp>connect
tftp>get demon.txt
tftp>status
tftp>quit
这就是从共享出通过tftp下载文件。