lv3 嵌入式开发-9 linux TFTP服务器搭建及使用

目录

[1 TFTP服务器的介绍](#1 TFTP服务器的介绍)

[2 TFTP文件传输的特点](#2 TFTP文件传输的特点)

[3 TFTP服务器的适用场景](#3 TFTP服务器的适用场景)

[4 配置介绍](#4 配置介绍)

[4.1 配置步骤](#4.1 配置步骤)

[4.2 使用](#4.2 使用)

[5 常见错误](#5 常见错误)


1 TFTP服务器的介绍

TFTP(Trivial File Transfer Protocol)即简单文件传输协议 是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件 传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69

2 TFTP文件传输的特点

tftp使用客户服务器方式和使用UDP数据报,因此tftp需要有自己的差错改正措施。(如丢包)

tftp支持小文件传输。(FTP)

tftp没有一个庞大的命令集,没有列目录的功能,也不能对用户进行身份鉴别。(必须提前知道目录)

3 TFTP服务器的适用场景

场景需求:频繁修改内容

如需要下载开发板xx.bin文件,电脑上不断调整下载到开发板

4 配置介绍

4.1 配置步骤

测试ubuntu网络情况

复制代码
 ping www.baidu.com

检测软件源更新

复制代码
sudo apt-get update

安装客户端(tftp)和服务器(tftpd)

复制代码
sudo apt-get install tftpd-hpa tftp-hpa

编辑配置

复制代码
sudo vi /etc/default/tftpd-hpa

内容 如下

复制代码
# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/linux/tftpboot"     //我们设定的TFTP根目录;mkdir创建
TFTP_ADDRESS="0.0.0.0:69"       //ip和端口号 0.0.0.0代表任意ip都可以
TFTP_OPTIONS="-c -l -s"              //TFTP启动参数

#-l:以standalone/listen模式启动TFTP服务,而不是从xinetd启动。(不需要依赖其他进程)

#-c:可创建新文件。默认情况下,TFTP只允许覆盖原有文件,不能创建新文件。

#-s:改变TFTP启动的根目录。不用手动指定目录,默认使用配置文件中的目录。 

给文件目录一个权限

复制代码
chmod 777 tftpboot

启动服务

复制代码
sudo service tftpd-hpa restart

4.2 使用

连接服务器 localhost代表本地。

get [filename] 获取文件

put [filename] 上传文件

q 退出

复制代码
linux@linux:~$ tftp localhost
tftp> get test
tftp> q                       
linux@linux:~$ cat test 
hello
linux@linux:~$ 

5 常见错误

错误现象: Transfer timed out

原因:tftpd服务没有启动

解决方法:启动服务 sudo service tftpd-hpa restart

错误现象:Error code 2:Only absolute filenames allowed

原因:在/etc/default/tftp-hpa中配置出错

解决方法:参考手册重新配置

错误现象:Error code 1:File not found

原因:指定的文件不存在; tftpd启动参数中没有指定-c选项,允许上传文件~上传的时候一定要确保文件先存在于上传目录下

错误现象: tftp:Permission denied

原因:权限不足

解决方法:检查文件的权限(要考虑是本用户、同组、其他用户)chmod 777

相关推荐
Miqiuha4 小时前
回流用户判定
服务器
RisunJan5 小时前
Linux命令-gpasswd命令(管理用户组的重要工具)
linux·运维·服务器
where happens5 小时前
centos创建目录并授予权限
linux·运维·服务器·centos
liebe1*15 小时前
第七章 防火墙地址转换
运维·服务器·网络
好好学操作系统5 小时前
autodl 保存 数据 跨区
linux·运维·服务器
dbitc5 小时前
WIN11把WSL2移动安装目录
linux·运维·ubuntu·wsl
KingRumn5 小时前
Linux同步机制之信号量
linux·服务器·网络
嵌入式学习菌5 小时前
SPIFFS文件系统
服务器·物联网
旺仔Sec5 小时前
2026年度河北省职业院校技能竞赛“Web技术”(高职组)赛项竞赛任务
运维·服务器·前端
BullSmall6 小时前
linux 根据端口查看进程
linux·运维·服务器