首页 > 系统相关 >arm-linux的TFTP 服务器搭建和测试

arm-linux的TFTP 服务器搭建和测试

时间:2023-06-01 18:06:48浏览次数:50  
标签:arm var tftpboot xinetd linux test tftp TFTP


这里并不会费劲的去介绍 TFTP 协议,那个意义不大,主要是教大家如何操作,在这个过程中进步。
网络协议非常复杂,完整的网络协议一个人将资料看一遍,估计这辈子就过去了。在这个庞大的网络工程中,不同的工程师分别做不同的工作,作为嵌入式 linux 工程师,要做的就是拿别人做好的东西移植,在嵌入式上完善功能。其实嵌入式上的所有功能从最开始,几乎都是从 PC 上移植过来的,很多代码以及软件都
是在 PC 机上实现过,嵌入式 ARM 处理器的发展相对于滞后(ARM 的流行是 2000 年之后的事情),所以在嵌入式上移植就成了非常重要的一项能力。

基本知识介绍

TFTP(Trivial File Transfer Protocol,简单文件传输协议),是一个基于 UDP 协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于开销不大、不复杂的应用场合。TFTP 协议专门为小文件传输而设计,只能从服务器上获取文件,或者向服务器写入文件,不能列出目录,也不能进行认证。

在的虚拟机 Ubuntu 上打开终端。
首先输入命令“sudo apt-get install xinetd”,安装 xinetd

sudo apt-get install xinetd

接下来输入命令“sudo apt-get install tftp tftpd”安装 tftp 和 tftpd

sudo apt-get install tftp tftpd

然后建立 TFTP 的配置文件,使用命令“vi /etc/xinetd.d/tftp”建立文件

vi /etc/xinetd.d/tftp

写入下面的内容:

service tftp
{
      socket_type = dgram
      protocol = udp
      wait = yes
      user = root
      server = /usr/sbin/in.tftpd
      server_args = -s /var/tftpboot/
      disable = no
      per_source= 11
      cps = 100 2
      flags = IPv4
}

arm-linux的TFTP 服务器搭建和测试_tftp

注意: 如上图所示, 这个文件在粘贴内容之后, 必须按照上面的格式严格对齐

退出并保存。其中 server_args 设置的/var/tftpboot 目录是 tftp 服务器的目录,TFTP 客户端就是从这个目录里面获取服务器上的文件的。使用命令 mkdir /var/tftpboot 建立 tftp 服务器的目录,如下图

mkdir /var/tftpboot

arm-linux的TFTP 服务器搭建和测试_文件传输_02


设置/var/tftpboot 的访问权限为 777

sudo chmod 777 /var/tftpboot

输入:sudo /etc/init.d/xinetd restart 命令重启 xinetd 服务

sudo /etc/init.d/xinetd restart

服务器到这一步就搭建好了,后面来进行测试。

服务器测试

本机测试:在/var/tftpboot 下面建立一个文件 test,在里面输入 hello world,然后保存该文件,如下图。

arm-linux的TFTP 服务器搭建和测试_嵌入式_03

启动另外一个终端,如下图

arm-linux的TFTP 服务器搭建和测试_嵌入式_04


然后输入:tftp 127.0.0.1,如下图

arm-linux的TFTP 服务器搭建和测试_文件传输_05


输入 get test 获取 test 文件,如下图

arm-linux的TFTP 服务器搭建和测试_文件传输_06


在上图看到获取到 test 的信息 13 字节,然后输入 q 退出 tftp.输入 ls 查看当前目录下是否有 test 文件了,通过查看,发现当前目录下应经有 test

文件了,这就是/var/tftpboot 目录下的那个 test 文件.使用 cat 命令查看一下 test 文件的内容,如下图。

arm-linux的TFTP 服务器搭建和测试_服务器_07


通过上面的截图,看到 test 文件里面的内容是 hello world,与/var/tftpboot 目录的 test是一样的,至此的 TFTP 服务器端的配置和测试就完成了


标签:arm,var,tftpboot,xinetd,linux,test,tftp,TFTP
From: https://blog.51cto.com/u_16147764/6397217

相关文章

  • linux pipe 无名管道
    管道的概念:管道是一种最基本的IPC机制,作用于有血缘关系的进程之间,完成数据传递。调用pipe系统函数即可创建一个管道。有如下特质:1.其本质是一个伪文件(实为内核缓冲区)2.由两个文件描述符引用,一个表示读端,一个表示写端。3.规定数据从管道的写端流入管道,从读端流出。管道......
  • linux命名管道
    管道是进程间通信的主要手段之一。一个管道实际上就是个只存在于内存中的文件,对这个文件的操作要通过两个已经打开文件进行,它们分别代表管道的两端。管道是一种特殊的文件,它不属于某一种文件系统,而是一种独立的文件系统,有其自己的数据结构。根据管道的适用范围将其分为:无名管道和命......
  • linux消息队列
    经典进程间通信机制(IPC):管道、FIFO、消息队列、信号量以及共享储存。这些机制允许在同一台计算机上运行的进程可以相互通信。但是当考察到不同计算机(通过网络相连)的进程相互通信时就必须借助网络通信机制(networkIPC),在分布式计算环境中,为了集成分布式应用,开发者需要对异构网络环境......
  • VMware中安装Linux-kali
    VMware中安装Linux-kali(详细图文教程)萌褚于2022-05-2010:33:30发布9499收藏94文章标签:Linux版权华为云开发者联盟该内容已被华为云开发者联盟社区收录加入社区镜像下载、域名解析、时间同步请点击阿里云开源镜像站一,VMware配置。  因为要装kali,所以要用到Debian......
  • Linux进程管理、计划任务笔记
    一、Linux进程管理1.1、进程概念进程是正在运行的程序实体,并且包括这个运行的程序中占据的所有系统资源,比如说CPU(寄存器),IO,内存,网络资源等。并发程序和顺序程序有本质上的差别,为了能更好地描述程序的并发执行,实现操作系统的并发性和共享性,引入“进程”的概念。进程是具有一定独立......
  • Linux系统管理---时区和时间管理
    一、时区查看时区:cat/etc/sysconfig/clock时区存放文件:/etc/localtime修改时区:cp/usr/share/zoneinfo/Asia/Shanghai /etc/localtime修改验证:date  返回有CST,表示修改正确了二、时间查看时间:date 或者  date-R或者按指定格式:date"+%Y-%m-%d%H:%M:%S"[root@hadoo......
  • Linux软件安装--二进制发布包安装、rpm发布包安装(案例:jdk和mysql安装)
    Linux软件安装的4种方式一、二进制发布包指软件已经根据平台编译并且打包,拿到这个包后解压并配置环境变量,如jdk包、mysql包、Tomcat包。示例:二进制发布包安装jdk。示例:二进制发布包安装jdk1.获取安装包1).直接从linux网上下载安装包-->wget https://download.oracle.com/otn-pu......
  • Linux的SSH免密登录配置
    一、SSH概念SSH为SecureShell(安全外壳协议)的缩写,简单说,SSH只是一种网络协议,用于计算机之间的加密登录传输,很多ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而SSH就是专为远程登录会话和其他网络服务......
  • linux配置静态ip
    转:https://blog.csdn.net/weixin_46560589/article/details/1248148601进入配置文件目录cd/etc/sysconfig/network-scripts 2编辑配置文件vimifcfg-ens32ens32是虚拟网卡名称,根据自己虚机上的网卡名称修改如果有多个网卡,编辑你要用的那个网卡 3......
  • linux 中 删除指定匹配特定字符指定次数之前或者之后的内容
     001、[root@PC1test]#lsa.txt[root@PC1test]#cata.txt0102030405060708091011121314151617181920[root@PC1test]#sed's//tag/2'a.txt|sed's/.*tag//'##删除第二个空格之前的所有内容030405080910131415181920......