参考朱有鹏老师《嵌入式开发环境搭建》
1、安装tftp
安装 tftp 所需的软件。首先需要安装 tftp-hpa,tftpd-hpa,前者是客户端,后者是服务程序,在终端下输入
sudo apt-get install tftp-hpa tftpd-hpa,安装 tftp-hpa 和 tftpd-hpa。
然后还需要安装 xinetd,在终端下输入 sudo apt-get install xinetd,安装好 xinetd。
2、配置/etc/xinetd.conf
配置相关服务文件。进入根目录下的 etc 文件夹(cd /etc/),首先看目录中有没有一个xinetd.conf 文件,如果没有则新建一个,有的话查看内容,看是否与下面的一致,若不一致则修改,内容如下:
# Simple configuration file for xinetd
##
Some defaults, and include /etc/xinetd.d/
defaults
{#
Please note that you need a log_type line to be able to use log_on_success
# and log_on_failure. The default is the following :
# log_type = SYSLOG daemon info
}
includedir /etc/xinetd.d
3、配置/etc/default/tftpd-hpa
配置tftp服务器,命令 sudo vim /etc/default/tftpd-hpa
将内容修改成:
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"
4、配置/etc/xinetd.d/tftp
然后进入 xinetd.d 文件夹(cd xinetd.d),查看是否有一个 tftp 文件,如果没有就新建一个,如果有的话就查看内容是否与下面的一致,不一致则修改,内容如下:
service tftp
{
socket_type = dgram
wait = yes
disable = no
user = root
protocol = udp
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
#log_on_success += PID HOST DURATION
#log_on_failure += HOST
per_source = 11
cps =100 2
flags =IPv4
}
其中 server_args 一行是配置服务器的文件存放的位置,就是进行 tftp 传输的时候,都是从该文件夹中搜索文件的
5、修改权限
chmod 777 /tftpboot
6、重启服
执行如下命令:
sudo service tftpd-hpa restart
sudo /etc/init.d/xinetd reload
sudo /etc/init.d/xinetd restart
环境搭建好了之后,可以在本地测试一下。
(1)在/tftpboot目录下新建一个文件a.c,然后在其中随意输入内容
(2)进入一个非/tftpboot的目录,在终端中输入sudo tftplocalhost,进入tftp命令符下,输入get a.c
如果没有提示,就说明传输成功,然后q,退出tftp命令符。