一、基础知识介绍
TFTP(Trivial File Transfer Protocol,简单文件传输协议),是一个基于 UDP 协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于开销不大、不复杂的应用场合。TFTP协议专门为小文件传输而设计,只能从服务器上获取文件,或者向服务器写入文件,不能列出目录,也不能进行认证。
根据上面关于 TFTP 的介绍,实现TFTP 我们需要搭建一个TFTP 的服务器,ARM开发板当做客户端。
使用虚拟机 Ubuntu来当做服务器,下面我们先讲解一下服务器端的配置。
二、搭建 TFTP 服务器
1、安装依赖包
sudo apt-get install tftp-hpa tftpd-hpa
sudo apt-get install xinetd
2、第二步, 配置/etc/xinetd.conf
vi /etc/xinetd.conf
# Simple configuration file for xinetd
#
#Some defaults, and include /etc/xinetd.d/
defaults
{
#Please note that you need a log_type line to be able to use log_on_success
#and log_on_failure. The default is the following :
#log_type = SYSLOG daemon info
}
includedir /etc/xinetd.d
查看是否有 xinetd.conf 查看内容是否一致, 如果没有创建一个,并输入如下内容
3、第三步,配置/etc/default/tftpd-hpa
sudo vim /etc/default/tftpd-hpa
内容修改成 ,其中工作目录TFTP_DIRECTORY=”/tftpboot” 如果根目录下没有tftpboot,需要自己创建——>这个很关键,不然tfp会启动失败,这个根据自己的路劲
#/etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/ema/tftpboot/"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s" // 这里是 -L 的小写 -l
4.、第四步,配置/etc/xinetd.d/tftp
vim /etc/xinetd.d/tftp //pathname 不存在时自己创建
打开文件后,对比如下,保持一致
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /home/ema/tftpboot/ -c
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
5、创建文件夹 mkdir /tftpboot
6、给权限 chmod 777 /tftpboot -R
7、启动服务器 sudo service tftpd-hpa start
8、调试服务器 在/tftpboot 下 touch test.txt
9、核心板 使用tftp下载文件
10、tftp -g -r test.c 10.1.41.116 (对应的ip 地址)
成功下载证明测试成功
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/34969.html