创建于 2013-04-16
迁移自本人的百度空间
--------------------------------
第1步:
安装tftp-hpa,tftpd-hpa,前者是客户端,后者是服务程序。
sudo apt-get install tftp-hpa tftpd-hpa
sudo apt-get install xinetd #安装好xinetd。
第2步:
配置相关服务文件。进入根目录下的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 ont-size: 12pt; "> # log_type = SYSLOG daemon info
}
includedir /etc/xinetd.d
第3步:
配置tftp服务器命令:
sudo vim /etc/default/tftpd-hpa
将内容修改成
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot" # tftp服务器的工作目录,注意修改其权限,例如 sudo chmod 777 /tftpboot
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"
第4步:
然后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步:
修改所需文件夹的权限。例如 sudo chmod 777 /tftpboot,也可以设置成合适的权限。
第6步:
重新启动服务。每次修改完配置文件后,都需要重新启动一下服务。
执行次序:
sudo service tftpd-hpa restart
sudo /etc/init.d/xinetd reload
sudo /etc/init.d/xinetd restart
测试:
(1) 在/tftpboot中新建一个文件file,然后在其中随便输入内容;
(2) 然后进入一个非/tftpboot的目录下;
(3) 再在终端中输入 sudo tftp localhost,进入tftp命令符下(可以在其中输入help查看命令和命令的作用);
(4) 输入 get file,如果没有任何提示,就说明传输成功了,然后输入 q 退出tftp命令符
现在即可在当前目录下就可以看到一个file文件,内容是与开始新建的那个file的内容是一致的。同样也可以在tftp命令符中输入 put xx,把xx文件上传到服务器文件夹中。如果一切ok,那就么一个可用的tftp服务器就顺利搭建成功了。
注:如果想要对其他电脑或者开发板进行tftp传输,则在终端输入 sudo tftp address(即目标电脑或目标开发板的ip地址),而且还要关闭ubuntu自带的防火墙,还要将这些机器的ip改到同一个段内。