当前位置: 首页 > article >正文

day03(Linux底层)Tftp服务器环境搭建

目录

Tftp服务器环境搭建

1、什么是Tftp

2、Tftp服务器环境搭建的目的

3、Tftp服务器搭建


Tftp服务器环境搭建

1、什么是Tftp

TFTP(Trivial File Transfer Protocol,简单文件传输协议)是一种基于UDP(User Datagram Protocol)的文件传输协议,它被设计为一个非常简单的文件传输机制,特别适用于那些对复杂性有严格限制的环境,如小型嵌入式系统或者进行网络引导(如DHCP和PXE启动过程中)。相比于FTP(File Transfer Protocol),TFTP不支持复杂的命令集、用户验证、目录浏览等高级功能,仅提供了基本的文件传输能力。

TFTP协议主要特点包括:

1. 简单性:由于其设计简单,实现容易,占用资源少,因此常用于引导加载程序、配置备份等场景。

2. 无连接:基于UDP协议,每次数据传输都不需要建立连接,降低了开销。

3. 小文件传输:主要用于传输小文件,如配置文件或启动映像。

4. 安全性:TFTP协议本身不包含任何安全措施,如加密或认证,所有传输都是明文的。

5. 五种报文类型:包括读请求(RRQ)、写请求(WRQ)、数据报文(DATA)、确认报文(ACK)和错误报文(ERROR)。

2、Tftp服务器环境搭建的目的

在Linux系统移植过程中我们的最终目的是让Linux在产品或者开发板上可以正常的运行工作,为了让Linux能够正常的工作运行,需要我们讲配置好的Linux镜像文件、跟文件系统等下载到开发板内运行,这个下载过程如果使用串口烧录不但不方便还很慢,使用网络的方式烧录既方便又快捷,所以需要搭建一个网络环境保障ubuntu(服务器用于存放Linux镜像等待烧录的文件)和产品或者开发板能够正常网络通信,上个实验开发板已经可以和服务器进行通信了,这里我们在Ubuntu(服务器中安装Tftp用于开发板和Ubuntu之间进行文件传输,这里提到的文件就是(Linux内核、根文件系统和Uboot))

3、Tftp服务器搭建

  • 检查是否已经安装Tftp服务器(使用命令 ’dpkg -s tftpd-hpa‘ 查看)

  • 显示如下信息表示安装了

  • 如果没有安装、确保Ubuntu正常联网,输入(sudo apt-get install tftpd-hpa tftp-hpa)命令进行安装。安装了直接执行下一步
  • 修改tftp服务器配置文件(sudo vi /etc/default/tftpd-hpa)(下图为修改之前)

  • 修改为如下内容(第四行为Tftp服务器路径(即客户端要下载的文件需要放到该目录下),下面步骤中会创建,第五行一定要是:69,注意有个冒号,第六行为权限),修改完保存退出

  • 创建服务器工作目录并设置为最高的权限(这里的目录就是上一步填写的)
sudo mkdir /tftpboot  创建目录
sudo chmod 777 /tftpboot  修改为最高权限
  • 重启tftp服务,使配置生效。

  • 本地测试tftp服务器是否配置成功

进入到服务器工作目录,并创建文件1.txt(名字随意),可以打开编辑点任意内容。

  • 按照下图进行tftp里面文件获取

  • 使用vi 1.txt查看文件内容

和我们刚刚在tftp目录下创建的内容一致,证明我们成功通过tftp服务器获取到了,tftp目录下的文件。


http://www.kler.cn/a/418112.html

相关文章:

  • 基于DHCP,ACL的通信
  • 系统架构:MVVM
  • linux上离线部署Mysql5.7.22
  • 日志与线程池
  • 程序设计 26种设计模式,如何分类?
  • 学习笔记043——HashMap源码学习1
  • 43 基于单片机的温度和烟雾检测
  • 计算机的错误计算(一百七十一)
  • jQuery零基础入门速通(下)
  • 新版本PasteSpider开发中专用部署工具介绍(让2GB的服务器也能使用CI/CD,简化你的部署过程)
  • 【ROS 机器人快速入门】
  • Elasticsearch ILM 索引生命周期管理讲解与实战
  • gitignore 不起作用
  • jenkins+github+springboot自动部署
  • w064基于springboot的高校学科竞赛平台
  • Element UI 打包探索【3】
  • bugku-web-login2
  • 【Canvas与图标】蓝色渐变SQL图标
  • 小程序解决大问题-物流系统磁盘爆满问题处理
  • 基于深度学习和卷积神经网络的乳腺癌影像自动化诊断系统(PyQt5界面+数据集+训练代码)
  • git如何快速拉取已经提交的mr进行验证
  • 编程语言之Python
  • LeetCode 热题 100_矩阵置零(18_73_中等_C++)(哈希集合;使用原二维数组记录)
  • 计算机光电成像理论基础
  • springboot360志愿服务管理系统--论文(论文+源码)_kaic
  • 鸿蒙修饰符