• 正文
  • 相关推荐
申请入驻 产业图谱

飞凌嵌入式ElfBoard-常用的网络服务的搭建之TFTP服务搭建

10/21 13:24
800
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

在网络服务搭建和测试时,ubuntu的网络模式需要设置为桥接模式,电脑主机、ubuntu主机、开发板三者的ip要处于同一网段。关闭ubuntu和windows防火墙(关闭ubuntu防火墙:sudo ufw disable

教程中使用的三者的ip分别如下:

电脑主机ip:192.168.0.64

主机ip:192.168.0.51

开发板ip:192.168.0.232

TFTP(Trivial 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

2.服务器配置?

首先,在/home/elf目录下建一个tftpboot,并把属性改成任意用户可读写:

elf@ubuntu:~$?mkdir tftpboot

elf@ubuntu:~$ chmod 777 tftpboot

然后,进入目录 /etc/xinetd.d/,并在其中新建文件tftp,把指定的内容加入到tftp文件中:

elf@ubuntu:~$?cd /etc/xinetd.d/

elf@ubuntu:/etc/xinetd.d$?sudo vim tftp

添加以下内容到tftp文件:

service tftp

{

disable = no 138

socket_type = dgram

protocol = udp

wait = yes

user = elf

server = /usr/sbin/in.tftpd

server_args = -s /home/elf/tftpboot -c

per_source = 11

cps = 100 2

}

最后,修改配置文件/etc/default/tftpd-hpa:

elf@ubuntu:~$ sudo vim /etc/default/tftpd-hpa

修改为:

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/home/elf/tftpboot"

TFTP_ADDRESS="0.0.0.0:69"

TFTP_OPTIONS="--secure -l -c -s"

注意:将“TFTP_DIRECTORY” 改为新建tftpboot目录所在的路径。

3.重新启动服务?

elf@ubuntu:~$ sudo /etc/init.d/xinetd reload

[ ok ] Reloading xinetd configuration (via systemctl): xinetd.service.

elf@ubuntu:~$ sudo /etc/init.d/xinetd restart

[ ok ] Restarting xinetd (via systemctl): xinetd.service.

elf@ubuntu:~$ sudo /etc/init.d/tftpd-hpa restart

[ ok ] Restarting tftpd-hpa (via systemctl):tftpd-hpa.service.

4.测试服务器

测试一下,在/tftpboot文件夹下新建立一个文件 :

elf@ubuntu:~/tftpboot$ touch abc

进入另外一个文件夹:

elf@ubuntu:~/tftpboot$ cd /home/

elf@ubuntu:/home$?sudo tftp 192.168.0.51 ???????????????//192.168.0.51为本机IP

tftp> get abc

tftp>?quit

elf@ubuntu:/home$?ls

abc??elf

如果可以下载abc文件说明服务器已经安装成功。

相关推荐