查看: 824|回复: 0

[经验] 嵌入式学习-ElfBoard ELF1 TFTP服务搭建的方法来啦

[复制链接]

该用户从未签到

发表于 2023-11-23 10:00:33 | 显示全部楼层 |阅读模式
分享到:
本帖最后由 eefocus_3860969 于 2023-11-23 10:06 编辑

在服务搭建和测试时,ubuntu的模式需要设置为桥接模式,电脑主机、ubuntu主机、开发板三者的ip要处于同一网段,并且ubuntu主机要能上外网。关闭ubuntuwindows防火墙(关闭ubuntu防火墙:sudo ufw disable
教程中使用的三者的ip分别如下:
电脑主机ip192.168.0.64
Ubuntu主机ip:192.168.0.51
开发板ip:192.168.0.232
1 TFTP服务搭建
TFTPTrivial File Transfer Protocol,简单文件传输协议),是TCP/IP协议族中用来在客户机和服务器之间进行简单文件传输的协议,开销很小。TFTP通常用于内核调试。在嵌入式Linux开发过程中,内核调试是其中一个基础、重要的环节。调试内核通常是与 Bootloader配合使用,只需在Bootloader中实现了网卡驱动和TFTP客户端,就可以使用TFTP进行传输内核。使用TFTP协议传输文件,还需要在主机安装TFTP服务端,可以在 Linux系统下实现,也可以在Windows系统下实现,下面在Linux(Ubuntu)系统下安装TFTP服务端进行测试。
一、安装服务器、客户端和守护进程
  1. elf@ubuntu:~$ sudo apt-get install tftp-hpa tftpd-hpa xinetd
复制代码
二、服务器配置
首先,在/home/elf目录下建一个tftpboot,并把属性改成任意用户可读写:
  1. elf@ubuntu:~$ mkdir tftpboot  
  2. elf@ubuntu:~$ chmod 777 tftpboot
复制代码
然后,进入目录 /etc/xinetd.d/,并在其中新建文件tftp,把指定的内容加入到tftp文件中:
  1. elf@ubuntu:~$ cd /etc/xinetd.d/
  2. elf@ubuntu:~$ sudo vim tftp
复制代码
添加以下内容到tftp文件
  1. service tftp
  2. {
  3. disable = no 138
  4. socket_type = dgram
  5. protocol = udp
  6. wait = yes
  7. user = elf
  8. server = /usr/sbin/in.tftpd
  9. server_args = -s /home/elf/tftpboot -c
  10. per_source = 11
  11. cps = 100 2
  12. }
复制代码
最后,修改配置文件/etc/default/tftpd-hpa
  1. elf@ubuntu:~$ sudo vim /etc/default/tftpd-hpa
复制代码
修改为
  1. TFTP_USERNAME="tftp"
  2. TFTP_DIRECTORY="/home/elf/tftpboot"
  3. TFTP_ADDRESS="0.0.0.0:69"
  4. TFTP_OPTIONS="--secure -l -c -s"
复制代码
注意“TFTP_DIRECTORY” 改为新建tftpboot目录所在的路径
三、重新启动服务
  1. elf@ubuntu:~$ sudo /etc/init.d/xinetd reload
  2. [ ok ] Reloading xinetd configuration (via systemctl): xinetd.service.
  3. elf@ubuntu:~$ sudo /etc/init.d/xinetd restart
  4. [ ok ] Restarting xinetd (via systemctl): xinetd.service.
  5. elf@ubuntu:~$ sudo /etc/init.d/tftpd-hpa restart
  6. [ ok ] Restarting tftpd-hpa (via systemctl):tftpd-hpa.service.
复制代码
四、测试服务器
测试一下,在/tftpboot文件夹下新建立一个文件
  1. elf@ubuntu:~/tftpboot$ touch abc
复制代码
进入另外一个文件夹
  1. elf@ubuntu:~/tftpboot$ cd /home/
  2. elf@ubuntu:/home$ sudo tftp 192.168.0.51                        //192.168.0.51为本机IP
  3. tftp> get abc
  4. tftp> quit
  5. elf@ubuntu:/home$ ls
  6. abc  elf
复制代码
如果可以下载abc文件说明服务器已经安装成功
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-11-18 02:51 , Processed in 0.112116 second(s), 16 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.