TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69。 (推荐学习:phpstorm)
TFTP是一个传输文件的简单协议,它基于UDP协议而实现,但是我们也不能确定有些TFTP协议是基于其它传输协议完成的。
此协议设计的时候是进行小文件传输的。因此它不具备通常的FTP的许多功能,它只能从文件服务器上获得或写入文件,不能列出目录,不进行认证,它传输8位数据。
传输中有三种模式:netascii,这是8位的ASCII码形式,另一种是octet,这是8位源数据类型;最后一种mail已经不再支持,它将返回的数据直接返回给用户而不是保存为文件。
TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现。嵌入式linux的tftp开发环境包括两个方面:一是linux服务器端的tftp-server支持,二是嵌入式目标系统的tftp-client支持。
因为u-boot本身内置支持tftp-client,所以嵌入式目标系统端就不用配置了。下面就详细介绍一下linux服务器端tftp-server的配置。
1、安装tftp服务器
需要安装xinetd、tftp和tftp-server 3个软件
如果能上网,通过yum安装:
yum xinetd yum install tftp yum install tftp-server
如果不能上网,可以直接安装提供的rpm包:
rpm -ivh xinetd-2.3.14-18.fc9.i386.rpm rpm -ivh tftp-0.48-3.fc9.i386.rpm rpm -ivh tftp-server-0.48-3.fc9.i386.rpm
2、配置tftp服务器
修改/etc/xinetd.d/tftp文件,将其中的disable=yes改为disable=no。主要是设置TFTP服务器的根目录,开启服务。修改后的文件如下:
tftp { socket_type =dgram protocol =udp =yes user =root server =/usr/sbin/in.tftpd server_args =-s /home/mike/tftpboot -c disable =no per_source =11 cps =100 2 flags =IPv4 }
说明:修改项server_args= -s 98953a78f52873edae60a617ec082494 -c,其中98953a78f52873edae60a617ec082494处可以改为你的tftp-server的根目录,参数-s指定chroot,-c指定了可以创建文件。
3、启动tftp服务器并关闭防火墙
/etc/ .d/ stop //关闭防火墙 /sbin/service xinetd start
或
service xinetd restart /etc/init.d/xinetd start
看到启动[OK]就可以了
4、查看tftp服务是否开启
-a | tftp
显示结果为udp 0 0 *:tftp *:*表明服务已经开启,就表明tftp配置成功了。
5、tftp使用
复制一个文件到tftp服务器目录,然后在主机启动tftp软件,进行简单测试。
tftp 192.168.1.2 tftp>get <download > tftp>put <upload file> tftp>q
以上是tftp执行流程的详细内容。更多信息请关注PHP中文网其他相关文章!