1.电脑端搭建tftp的服务:
第 1 步:安装 tftp
sudo apt-get install tftp-hpa tftpd-hpa
sudo apt-get install 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="/home/tftpd"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"
第四步:配置/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 /home/tftpd
per_source = 11
cps =100 2
flags =IPv4
}
第 5 步:修改权限
修改所需文件夹的权限。需要修改的文件夹也就是上一步提到的那个服务器文件存放的文件夹,以我的配置文件为例,创建一个文件夹(sudo mkdir /home/tftpd),然后把它可以设置成访问权限最宽松的(sudo chmod 777 /home/tftpd),也可以设置成合适的权限。
第 6 步:重启服务
重新启动服务
sudo service tftpd-hpa restart
当配置好 tftp 的配置文件后,需要重新启动一下 xinetd,
在终端中输入 sudo /etc/init.d/xinetd reload
重新加载一下进程,
再输入 sudo /etc/init.d/xinetd restart
,重启服务。记住,每次修改完配置文件后,都需要重新启动一下服务。
第七步:测试(说明:一定要测试一下,因为这些步骤看似简单,但也是能够正常进行通信的基础,可以减少后面数据通信问题排查的工作和定位问题的难度)
在前面的tftpd的文件夹下创建文件,用于后面本地的测试
在tftpd的服务文件夹下面增加文件,并在home目录下本地测试,可以发现通过tftp服务可以获取对应的文件,
注:常见问题排查,当通过tftp localhost打开tftp服务后,get 对应的文件的时候,提示没有权限或者权限不够,可以尝试使用sudo tftp localhost,如果可以get,证明home的用户权限的问题,
修改home的用户,chown
其他问题可自行百度,问题不大