您的位置:首页 > 编程语言 > PHP开发

ubuntu12.04安装tftp,配置,修改目录,错误类型

2013-06-24 20:47 369 查看
【前言】学习嵌入式,需要配置tftp服务,在网上搜了搜,很多,但是配置了,我的老是出现Error code 1: File not found错误,经过探索和一个大哥的博客http://blog.csdn.net/haiwil/article/details/6606648,终于配置出来了,记录如下:

1:安装服务,共3个服务

sudo apt-get install tftp-hpa tftpd-hpa xinetd


2:新建配置文件 /etc/xinetd.d/tftp

sudo vim /etc/xinetd.d/tftp


注意:如果不是root用户,则加sudo,否则系统不允许tftp,出现错误

"/etc/xinetd.d/tftp" E212: Can't open file for writing


修改/etc/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 -c
per_source = 11
cps = 100 2
}


注意:第九行中

server_args = -s /tftpboot -c


-c参数是允许上传用的,参数/tftpboot则是你的tftp目录,修改成你的目录即可,但是笔者建议在根目录下,方便

3:修改配置文件/etc/default/tftpd-hpa

sudo vim /etc/default/tftpd-hpa


修改为:

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot " //改成你想要的那个tftpboot
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"        //这里是选项


4:在根目录下新建tftpboot目录,并修改权限

mkdir /tftpboot
sudo chmod 777 -R  /tftpboot


5:在/tftpboot中新建一个测试文件test

touch  test


6:【重要】重启服务,修改配置文件的任何地方都要重启服务

sudo /etc/init.d/xinetd reload
sudo /etc/init.d/xinetd restart


7:测试服务tftp是否启动

netstat -a|grep tftp


显示 :

udp        0      0 *:tftp                  *:*


则启动服务了

8:测试tftp

进入另一个目录【不是/tftpboot目录,比如用户jyg目录】

cd /home/jyg


测试如图:



9:出现错误:

  【错误】Error code 0: Permission denied,是因为tftpboot文件夹没有权限,或者是要上传和下载的文件没有权限。

  【解决】修改权限

sudo chmod 777 -R  /tftpboot


  【错误】Error code 1: File not found,原因1:指定的文件不存在;原因2:tftpd启动参数中没有指定-c选项;原因3:目录有问题,因为安装的时候默认的tftp目录是【/var/lib/tftpboot】,您可以把test文件放在这个目录中重新测试一下,如果正确说明猜想是正确的。

  【解决】原因1和原因2都好解决,这里只解决原因3:重启服务或者重启系统
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐