常识:一般电脑安装tftp所需的软件
安装tftp-hpa、tftpd-hpa和xinetd:
$ sudo apt-get install tftp-hpa tftpd-hpa xinetd
tftp-hpa 的配置文件为 /etc/default/tftpd-hpa
#Defaults for tftpd-hpa
RUN_DAEMON="no"
OPTIONS="-s /home/ch/tftpboot -c -p -U 077 -u tftpd"
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/ch/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
每次修改完配置文件后,都需要重新启动一下服务。
$ sudo service tftpd-hpa restart //重启服务器
$ sudo /etc/init.d/xinetd reload
$ sudo /etc/init.d/xinetd restart //重启xinetd,tftp的一个脚本
基本知识:tftp-hpa是客户端,tftpd-hpa是服务程序。
tftpd-hpa:源代码下载地址:https://www.kernel.org/pub/software/network/tftp/
apt-get install tftpd-hpa
配置TFTP服务器
第1步: 修改/etc/default/tftpd-hpa配置文件。 将/etc/default/tftpd-hpa内容修改为:
|
使用选项,-s选项,secure选项,后面要跟一个目录,否则会报错。
Dec 13 14:14:42 ch-Founder-PC in.tftpd[12796]: no -s directory
-c选项,是可以写文件。但是-c选项必须要在-s选项存在的情况下才能发挥作用。
-l选项,可以自己启动,不依赖与xinetd,或者/etc/init.d/tftpd-hpa脚本。
-v选项会在/var/log/syslog里面写入日志,-vv会写入更详细的信息。
root@ch-Founder-PC:~# /usr/sbin/in.tftpd -l -vv -s /home/ch/tftpboot等于交叉编译出的./tftpd -l -vv -s /home/ch/tftpboot
因为:https://www.freebsd.org/cgi/man.cgi?query=in.tftpd&apropos=0&sektion=0中解释如下:
NAME tftpd - Trivial File Transfer Protocol server SYNOPSIS in.tftpd [options...] directory...