网上的相关的步骤给的很多,基本方法都是一样的,下面的一篇算是一个总结,条理很清楚
http://www.cnblogs.com/shenhaocn/archive/2011/03/13/1983042.html
但是我在用飞凌的板子的时候发现,按照飞凌给出的方法,却总是不对。他给出的方法具体是这样的:
(1)安装客户端。
root@forlinx:~# apt-get install tftp
(2)安装服务端
root@forlinx:~# apt-get installtftpd
(3)安装 inetd。
root@forlinx:~# apt-get installopenbsd-inetd
inetd 是监视一些网络请求的守护进程,其根据网络请求来调用相应的服务进程来处理连接请求。
(4)在“/”目录下见一个 tftpboot,把属性改成 777。
(5)在/etc/inetd.conf 里添加。
tftp dgram udp wait root /usr/sbin/in.tftpd/usr/sbin/in.tfptd -s /tftpboot
inetd.conf 是 inetd 的配置文件。inetd.conf 文件告诉 inetd 监听哪些网络端口,为每个端口启动哪个服务。
(6)重新加载 inetd 进程。
/etc/init.d/openbsd-inetd
reload
(7)禁用防火墙。
ufw disable
(8)测试 TFTP 服务器。
■ 从服务器下载文件:
1 登录服务器:tfpt 127.0.0.1 #对于自己的电脑,可以改为tftp localhost
2 从服务器上获取文件:get 命令
上面的方法总是会产生error 1,解决的方法又很多,但是却都不能解决我的问题。今天参考了一篇文章,后来仔细分析了/etc/inetd文件。飞凌给出的对inetd文件更改的方法使这样的:
tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /tftpdboot
现将tftp 改为 tftpd 问题就得以解决 (tftp 使客户端,tftpd为服务程序)
如下: tftpd dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /tftpdboot