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

ubuntu中安装tftp服务器

2016-09-18 17:59 399 查看
tftp服务器是简单版的ftp,可以实现服务器和客户端之间的简单文件传输,包括上传下载。

网上版本杂乱,此为亲测可用。

1.sudo -i

       设置为超级用户模式,否则之后每个命令前都要加sudo

2.安装包

 apt-get install tftp-hpa

 apt-get install xinetd

3.建立服务器文件地址,设置权限。这个地址称为tftpbppt,也就是与其他客户端可以互相访问到的文件夹,权限设置包括可读,可写,我建立在了/home下

mkdir  /home/tftpboot

chmod 777 tftpboot

4  vi /etc/xinetd.d/tftp

写入

service tftp
{

        socket_type    = dgram

        protocol       = udp

        wait           = yes

        user           = root

        server         = /usr/sbin/in.tftpd

        server_args    = -s /home/tftpboot/ ---------------------------------这个地方填第3部你建立的互相访问文件夹tftpboot的地址

        disable        = no

        per_source     = 11

        cps            = 100 2

        flags          = IPv4
}

5.vi /etc/default/tftpd-hpa 进行修改

  我的版本之前是没有这个文件的,所以自己建立了一个,内容为

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/home/tftpboot"   //修改成自己要使用的tftpboot目录

TFTP_ADDRESS="0.0.0.0:69"

TFTP_OPTIONS="-l -c -s"   //-c 表示可以创建文件 -c  create

6.重启服务器

 /etc/init.d/xinetd restart

service tftpd-hpa restart

开始测试:

 测试的方法就是在tftpboot里随便建立一个文本文件,然后看在其他的文件夹里能不能通过tftp读取到这个文件

所以先在tftpboot里随便建立一个vi a.c  内容是 123

然后去其他文件夹 开始通过tftp建立连接

tftp localhost

tftp-> get a.c

tftp->q --------------------------退出的意思

然后正常情况下该文件夹就会出现一个a.c  打开确认里面的内容是不是123。

出现的问题:

1.Transfer timed out.

重做第6步

2.Access denied

权限不够 ,加sudo

3.No such file

确认tftpboot下是否有该文件,再检查第4,5部中tftpboot的位置是否正确

          
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tftp ubuntu 服务器