ubuntu16.04安装配置tftp服务

首先声明:tftp是client客户端,tftpd是server服务器端,d应该指的是daemon。如果你要从别人的tftp服务器端上传/下载东西,就要用到tftp;如果你为别人提供tftp服务,供别人上传/下载东西,那就要安装tftpd服务程序。

ubuntu中常用的tftp服务器和客户端是tftpd-hpa和tftp-hpa

==========================================================================================

tftpd-hpa(服务器)

安装:

  • sudo apt-get install tftpd-hpa

配置:

  1. sudo vim /etc/default/tftpd-hpa
  2. TFTP_USERNAME="tftp"
    TFTP_DIRECTORY="/tftpboot"    //指定将来下位机的下载目录为上位机的/tftpboot,此目录随意指定即可
    TFTP_ADDRESS="0.0.0.0:69"
    TFTP_OPTIONS="-l -c -s"
  3. 修改完毕,保存退出
  4. sudo mkdir /tftpboot //创建tftpd-hpa网络服务的下载目录
  5. 修改下载目录的用户和组权限为当前用户(例如carspiriter用户) 
  6. sudo chown carspiriter /tftpboot -R 
  7. sudo chgrp carspiriter /tftpboot -R
  8. 修改下载目录的权限
  9. sudo chmod 777 /tftpboot

使用:

  • 重新启动tftpd-hpa网络服务:sudo service tftpd-hpa restart

==============================================================================================

tftp-hpa(客户端)

安装:

  1. sudo apt-get install xinetd
  2. sudo apt-get install tftp-hpa

配置:

  1. vim /etc/xinetd.d/tftp
  2. 配置内容如下图
  3. ubuntu16.04安装配置tftp服务_第1张图片
  4. 重启tftp服务:sudo service xinetd restart

============================================================================================

测试:

  1. 随便找个目录,只要不是/tftpboot就行
  2. tftp 127.0.0.1
  3. tftp> get xxx    //下载(下载成功后没有提示,并且在当前目录下会出现xxx文件)

============================================================================================

Bug修复:

  • 现象:后来在使用的过程中碰到了如图问题

ubuntu16.04安装配置tftp服务_第2张图片

  • 原因:从Log可以看到,是在执行in.tftpd文件的时候出错退出的。而in.tftpd在两个地方都有设置执行,故而冲突。

一个是在xinetd超级守护进程中有设置开机自动执行in.tftpd,如下图文件/etc/xinetd.d/tftp中server = /usr/sbin/in.tftpd

ubuntu16.04安装配置tftp服务_第3张图片

另外一个地方就是在tftpd自己的启动文件/etc/init.d/tftpd-hpa也有设置,如图:

  • 方法:只要不让xinetd启动tftpd服务就可以了,具体操作如下:

1.

2.         disable = yes

3.ubuntu16.04安装配置tftp服务_第4张图片

  • 总结:出问题的原因在于不了解xinetd托管服务,导致在多个地方设置开启tftpd,造成端口冲突。这个后续要深入学习下。

参考:

  1. http://wiki.ubuntu.org.cn/Tftpd-hpa
  2. https://www.linuxidc.com/Linux/2013-07/87366.htm
  3. Linux tftp命令
  4. https://blog.csdn.net/canhaimingyue/article/details/52544772

你可能感兴趣的:(ubuntu16.04安装配置tftp服务)