ubuntu下搭建tftp服务器

来源:互联网 发布:2016年淘宝用户人数 编辑:程序博客网 时间:2024/05/18 01:55

最近调试嵌入式开发板, 需要利用tftp下载内核文件,这时就需要在PC机上搭建一个tftp服务器了, 方法很简单,如下:

先安装tftp服务器: sudo   apt-get  install  tftpd-hpa

再安装tftp客户端: sudo   apt-get  install  tftp-hpa , 客户端主要用于本机自测, 保证tftp服务器是可以正常使用的。

然后配置一下tftp服务器, 主要是设置tftp的文件夹路径:

sudo vim /etc/default/tftpd-hpa

添加如下内容:

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/home/hwlxhy/tftpboot"# 这个路径自行定义,我是定义在用户目录下的tftpboot文件夹

TFTP_ADDRESS=":69"

TFTP_OPTIONS="--secure"

然后重启tftpd-hpa服务

sudo service tftpd-hps restart

这样就配置完了, 现在来试试是否搭建成功了:

先在/home/hwlxhy/下面创建tftpboot文件夹,并修改文件夹属性: chmod -R 777 tftpboot

然后在tftpboot文件夹下面创建一个文件:touch test并添加一些内容: echo "123456" > test

在任意路径下(这里选择在用户路径下,即/home/hwlxhy下)输入

tftp localhost此时会进入到tftp客户端, 可以看到显示 tftp >等待下一步操作,此时输入get test,回车后,再输入quit退出tftp客户端。

然后 ls /home/hwlxhy/, 可以看到该路径下多了一个 test文件, 并且内容是123456

这样就说明tftp服务器搭建成功了!!!

再说明一个情况, 如果客户端是在嵌入式板子上, 而且不是通过网线直连的方式连接到PC机, 比如通过路由等,

那么从PC机tftp服务器中下载文件需要执行以下命令:

tftp -g -r file_name ip_addr

其中 -g 代表 get, -r 代表远程主机, file_name代表你要下载的文件, ip_addr就是PC机的ip地址。

这里要特别说明的是, 如果是通过tftp上传文件到服务器, 比如上传test2文件,那么你会发现如果执行:

tftp -p -r file_name ip_addr

是不行的, 会提示文件不存在, 这是什么情况? 研究后发现, 需要你在tftp服务器上建立一个相同名字的文件,

并且是可读可写可执行权限,才可以上传。即先在tftp服务器上创建一个空文件test2,然后再执行上述命令即可。

至于为什么,还没有去研究,知道的大神请告知!!

怎么样? 很简单吧? 使用起来也很方便 。