1. TFTP服务简介
TFTP是 Trivial File Transfer Protocol 的缩写,即简单文件传输协议,是一个基于 UDP 协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于开销不大、不复杂的应用场合
TFTP协议专门为小文件传输而设计,只能从服务器上获取文件,或者向服务器写入文件,不能列出目录,也不能进行认证。TFTP协议传输是由客户端发起的
客户机和服务器之间的交互过程如下图示:
2. Linux下部署TFTP服务
2.1 安装TFTP服务
- Ubuntu联网,安装xinetd(extended internet daemon)托管服务
- 查询/etc/下是否存在xinetd.conf文件,若没有需自己新建一个,内容修改如下
- 创建linux/tftp文件夹,并赋予可读可写可执行权限(777)
- 安装tftp-hpa(客户端)和tftpd-hpa(服务端)服务程序
- 打开tftpd-hpa配置文件/etc/default/tftpd-hpa,将上面创建的tftp目录设置为TFTP服务器工作目录
⏩ 创建/etc/xinetd.d/tftp配置文件,并添加如下内容,如果/etc文件夹中没有xinetd.d子目录,可自行创建
- 重启tftpd-hpa服务
- 重启xinetd服务
2.2 TFTP测试
这里使用 Ubuntu作为TFTP服务器端,Linux开发板作为客户端来进行TFTP测试。确保网络环境正常,Ubuntu、Windows和开发板能相互ping通
- 在ubuntu的/home/andyxi/linux/tftp目录下创建test.c文件
- 在开发板中执行tftp命令将虚拟机TFTP工作目录下的test.c文件拷贝到开发板中
- 若文件被成功传输到开发板上,说明TFTP服务部署成功