安装tftp服务并且put 新文件无错版

安装tftp服务并且put 新文件无错版

首先,我的linux的版本是ubuntu10.04。先安装tftpd-hpatftp-hpa,和xinetd三个文件,用sudo apt-get install filename命令安装即可。安装非增强版的put好像有问题 。

其次,配置tftp服务器,这个比较关键,配置不好,PUT会出Error code 1: File not found

具体的配置如下:


打开/etc/default/tftpd-hpa文件,进行如下编辑:



#/etc/default/tftpd-hpa

TFTP_USERNAME="tftp"

 

TFTP_DIRECTORY="/tftpboot"

 

TFTP_ADDRESS="0.0.0.0:69"

 

TFTP_OPTIONS="--secure --create"

 

RUN_DAEMON="yes"

 

OPTIONS="-l -s -c /tftpboot "

PS:
第二项是自己定义的tftp的工作目录,我定义的是根目录下的tftpboot;还有第四项,--secure选项是为了在运行时执行put操作,也可以写成-s形式;-create选项是为了执行get的写操作,也可以写成-c形式,如果不设置的话使用put 会报错哦。设置好后保存,退出即可。

第三,在根目录下建立tftp的工作目录,即mkdir tftpboot,然后修改它的权限,chmod 777 tftpboot

第四,重启tftp服务器,即sudo /etc/init.d/tftpd-hpa restart 或者 sudo service tftpd-hpa restart

第五,测试搭建的服务器,假设自己的机器的IP192.168.0.12,重启服务器后,在tftp工作目录下,即tftpboot下建立测试文件test.c,然后打开另一个终端,执行tftp 192.168.0.12,然后get test.c,输入q,退出tftp.即可在当前目录下看见test.c文件了。

常见问题:
1.
如以上操作均无误,但是传输失败,则检查防火墙是否关闭。
2.
使用虚拟机和主机通信时,虚拟机的网络连接要设置为桥接方式,否则虚拟机连接不到主机。
3.
如出现
tftp> get test.c
Transfer timed out.
则说明tftp 服务器没有运行起来,重启试试,不行的话就是哪里出现了问题,卸掉重装。
4.
如出现
tftp> put ex070416.log
Error code 1: File not found
则说明指定的文件不存在;或tftpd启动参数中没有指定-c选项,允许上传文件。

1:我发现光 -c 选项是不可可以的。需要设置成这样:TFTP_OPTIONS="--secure --create"

2:发现/etc/xined.d/tftp 文件对TFTP设置没有作用。?

注3:如果出错了,多与/etc/default/tftpd-hpa 文件的设置有关,请阅读tftp的说明。

参考:

http://blog.sina.com.cn/s/blog_7e8fb215010166di.html

http://cmc.site11.com/2011/11/ubuntu-10-04-tftp-server-tftpd-hpa-how-to/

关键时刻还是google给力阿,看文章不在多贵在精。

 

 

原文地址:https://www.cnblogs.com/imucsgg/p/2995695.html