ubuntu14.04 下的tftp服务器搭建
第1步:
安装tftp所需的软件。首先需要安装tftp-hpa,tftpd-hpa,前者是客户端,后者是服务程序,
在终端下输入 sudo apt-get install tftp-hpa tftpd-hpa,安装tftp-hpa和tftpd-hpa。
然后还需要安装xinetd,在终端下输入 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
# and log_on_failure. The default is the following :
# log_type = SYSLOG daemon info
}
includedir /etc/xinetd.d
第3步:
然后进入xinetd.d文件夹(cd xinetd.d),查看是否有一个tftp文件,如果没有就新建一个,如果有的话
就查看内容是否与下面的一致,不一致则修改,内容如下:
service tftp
{
disable = no
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot 改
Per_source = 11 改
cps = 100 2
flags =IPv4
}
其中server_args一行是配置服务器的文件存放的位置,就是进行tftp传输的时候,都是从该文件夹中搜索文件的
第4步:
修改所需文件夹的权限。需要修改的文件夹也就是上一步提到的那个服务器文件存放的文件夹,
以我的配置文件为例,在/home下创建一个文件夹(sudo mkdir /tftpboot),然后把它可以设置成访问权
限最宽松的(sudo chmod 777 /tftpboot),也可以设置成合适的权限。
第5步:
重新启动服务。这也是我经常疏忽的一步,当配置好tftp的配置文件后,需要重新启动一下xinetd,
在终端中输入 sudo /etc/init.d/xinetd reload,重新加载一下进程,再输入 sudo /etc/init.d/xinetd restart,
重启服务。记住,每次修改完配置文件后,都需要重新启动一下服务
以上四步就可以建立好tftp服务器了,可以先进行一下测试。
首先在/home/tftpboot中新建一个文件file,然后在其中随便输入内容;然后进入一个不是/home/tftpboot的
目录下);再在终端中输入 sudo tftp localhost,进入tftp命令符下(可以在其中输入help查看命令和命令的作用),输入 get file,
如果没有任何提示,就说明传输成功了,然后输入 q 退出tftp命令符,在当前目录下就可以看到一个file文件,
内容是与开始新建的那个file的内容是一致的。同样也可以在tftp命令符中输入 put xx,把xx文件上传到服务器
文件夹中。如果没错误,tftp服务器就顺利搭建成功了。
对于上面的测试是针对本地测试的,如果想要对其他电脑或者开发板进行tftp传输,则在终端输入 sudo tftp xxx
(即目标电脑或目标开发板的ip地址),关闭ubuntu自带的防火墙,或将防火墙给卸载了
(sudo apt-get remove iptables),通过以上的步骤,就可以通过tftp协议,在电脑和开发板之间进行文件传输了,目前的目的就是下载Linux内核和
文件系统到开发板。