Ubuntu下配置tftp服务

1.安装TFTP软件

sudo apt-get install tftp-hpa tftpd-hpa

tftp-hpa是客户端,tftpd-hpa是服务器端

2.建立tftpboot目录,作为服务器的目录
sudo mkdir ~/tftpboot
释放权限:(服务器目录,需要设置权限为777,chomd 777)
sudo chmod 777 ~/tftpboot

3.配置TFTP服务器

sudo gedit /etc/default/tftpd-hpa

将原来的内容为:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
#TFTP_DIRECTORY="/var/lib/tftpboot"  #修改为自己需要的路径,与上面创建的目录一致
TFTP_ADDRESS="0.0.0.0:69"
#TFTP_OPTIONS="--secure"  #可以通过查看mantftpd,看各种参数的意义

#修改为

TFTP_DIRECTORY="/home/shenhao/tftpboot"

TFTP_OPTIONS="-l -c -s"

3.重新启动TFTP服务

sudo service tftpd-hpa restart

4.测试下

$ cd ~/tftpboot echo "hello tftp service">>a.txt

$ echo "hello tftp service,put to tftp serive">>b.txt

$ tftp localhost

tftp> get a.txt

tftp> put b.txt

tftp> quit

其中get是取得文件,put是将文件上传到TFTP服务器上。

-----------------------------------------------------------------------

Ubuntu 10.10安装配置tftp服务

作者:邓雪峰,华清远见嵌入式学院讲师。

最近在讲解ubuntu 10.10相关的基础课程的时候,课堂上给同学们讲过了tftp相关的配置,虽然相关的配置很简单的几步就可以实现tftp服务的配置,但是同学在下课做 实验的过程中遇到了很多问题,因此,在网上仔细找了一下原因,现把tftp配置过程及相关的配置及容易出现的错误总结一下。

TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69。它基于UDP协议而实现。

在我们的使用过程中,我们的TFTP服务是利用xinetd进程起动的,所以下面先看一下xinetd 的介绍:xinetd即extended internet daemon,xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器。经常用来管理多种轻量级Internet服务。 xinetd提供类似于inetd+tcp_wrapper的功能,但是更加强大和安全。

一般来说,我们如果启动tftp服务,只要做如下的配置就可以了:

1、编辑/etc/xinetd.d/tftp文件,本文件为xinetd对tftp服务支持的配置文件,一般来说这个文件会有如下所示的内容:

service tftp
        {
                socket_type = dgram
                protocol = udp
                wait = yes
                user = root
                server = /usr/sbin/in.tftpd
                server_args = -s /tftpboot
                disable = no
                per_source = 11
                cps = 100 2
                flags = IPv4
        }

一般来说,在这个配置文件中,我们要注意的就是对tftp服务器共享目录的设置,也就是server_args=-s /tftpboot这一行,我们可以看到这行有个参数-s,那么对这个配置还有几个相关的参数,现介绍一下:

-l 使用standalone模式运行,此模式下,将会忽略-t选项
        -a address:port 在standalone模式下服务所在的IP与端口,如果不指定,则在本机所有IP,/etc/service中指定的port上侦听连接
        -c 允许在服务器上新建文件,否则只允许更新现有的文件。如果未指定-U或-p选项,则允许任何人上传文件
        -s directory 服务器端默认的目录,默认为/var/lib/tftpdboot
        -u username tftp服务以什么身份运行,默认是nobody,一般可以新建一个tftp的账号来运行
        -U umask 上传文件的掩码,如果未指定-p则为000,如果指定了-p,则采用指定的umask
        -p 对于通过-u指定的用户执行的动作,不做额外的权限检查

2、创建共享目录

按照上一步中配置的目录,创建tftp服务共享目录步骤如下:

cd /
        sudo mkdir tftpboot
        sudo chmod –R 777 tftpboot
        cd /tftpboot
        sudo touch test
        chmod 777 test

在本步骤中,创建了一个tftpboot的目录,并在目录下创建了一个名为test的文件用来测试,把他们的权限均改为777以备使用。

3、启动tftp服务

我们的tftp服务此时是利用xinetd进程起动的,故启动命令如下:

sudo /etc/init.d/xinetd restart

4、测试tftp服务

可以 利用ifconfig eth0查看本机IP地址后利用tftp连接至本机的tftp服务器,但是如果想在本机上测试可以利用127.0.0.1地址来测试以上步骤是否成功:

tftp 127.0.0.1
        tftp>get test
        Received 1018 bytes in 0.1 seconds
        tftp>quit

此时如果在当前目录下发现test文件,则tftp服务已经正确运行。

但是,在保证以上步骤没有误操作的情况下,有些同学虽然配置运行都没有问题了,到最后获取文件的时候会出现问题,主要会出现以下两个提示:(下面是我在网上找到的解决办法)

1:如果出现permission denied 错误 则是操作者权限不够,需要提升权限

su root

输入密码后就可以正常进行tftp传输操作了

2:如果出现Access violation错误 则是文件权限没有解开,

将要操作的文件操作权限全解开就可以了

chmod 777 文件名

第一个错误一般来说按照上面的办法都可以修正,但是第二个错误按照以上方法修改后如果还是出现的话,可以看看下面的这个文件/etc/inetd.conf,然后在其中找到这样的一行:

tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /srv/tftp

要把最后一个参数改成我们自己设置的tftp共享目录就可以了,即:

tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftpboot

Ubuntu下配置tftp服务的更多相关文章

  1. [转]Ubuntu下配置NFS服务

    [转]Ubuntu下配置NFS服务  http://blog.163.com/liu8821031%40126/blog/static/111782570200921021253516/ Table ...

  2. Ubuntu安装配置TFTP服务

    tftpd-hpa 是一个功能增强的TFTP服务器.它提供了很多TFTP的增强功能,它已经被移植到大多数的现代UNIX系统. 1.安装 sudo apt-get install tftpd-hpa t ...

  3. Ubuntu下配置NFS服务

    Table of Contents 1.下载相关软件 2.建立共享目录 3.修改该配置文件 4.重启服务 5.测试服务器 6.测试客户端 测试系统:Ubuntu8.04 1.下载相关软件 使用如下命令 ...

  4. Ubuntu 下配置 SSH服务全过程及问题解决

    Windows下做Linux开发,装虚拟机里,怎么可以不用SSH呢.有人说,“做Linux开发,还不直接装机器上跑起来了,还挂虚拟机,开SSH……闲的蛋疼了吧”,不管怎样,我接触Linux算是3年了, ...

  5. Ubuntu 下配置ftp服务端

    安装sudo apt-get install pure-ftpdsudo netstat –ano | grep “21”查看21端口是否已开启.完成安装后,就可以用Ubuntu系统的用户名和密码登陆 ...

  6. ubuntu下配置ProFtpd服务使用sqlite3作为后端用户认证

    个人机器需要开个文件共享,Linux机器懒得配置SMB,就直接安装了ProFtpd,以做FTP服务器 Ubuntu安装挺简单,可使用就不那么友好了,配合GAdmin-Proftpd,一样不好用. 首先 ...

  7. ubuntu配置tftp服务

    ubuntu配置TFTP服务: TFTP是用来下载远程文件的最简单的网络协议,基于UDP协议.xinetd是新一代的网络守护进程服务程序,经常用于管理多种轻量型internet服务. sudo apt ...

  8. 【教程】ubuntu中配置tftp

    1. 安装 tftpd ( tftp 服务器). tftp ( tftp 客户端)以及 xinetd (超级服务器) 1. 安装 tftpd ( tftp 服务器). tftp ( tftp 客户端) ...

  9. Ubuntu下配置python完成爬虫任务(笔记一)

    Ubuntu下配置python完成爬虫任务(笔记一) 目标: 作为一个.NET汪,是时候去学习一下Linux下的操作了.为此选择了python来边学习Linux,边学python,熟能生巧嘛. 前期目 ...

随机推荐

  1. asp.net web 开发登录相关操作的控件LoginName、LoginStatus和LoginView控件使用详解

    http://book.51cto.com/art/200909/154039.htm http://book.51cto.com/art/200909/154041.htm ASP.NET提供了一套 ...

  2. Oracle Form 特殊的默认值 $$variables$$

    Oracle Forms 提供了六个特殊的系统变量,均为提供日期和时间的信息的变量: •$$DATE$$ •$$TIME$$ •$$DATETIME$$ •$$DBDATE$$ •$$DBTIME$$ ...

  3. Android开发UI之补间动画-布局添加动画

    布局添加动画 使用步骤: 1.获取到布局的id RelativeLayout ly=(RelativeLayout)findViewById(R.id.layout); 2.设置动画样式 ScaleA ...

  4. Sublime Text各种插件使用方法

    有快捷键冲突的时候可以修改快捷键,建议修改插件快捷键而不是Sublime Text的快捷键,我的有冲突的一律将插件快捷键设置成:Ctrl+Alt+A(B...) Package Control 通俗易 ...

  5. 轻松搭建自己的Linux发行版本

    许多人想要搭建自己的Linux发行版本,可能是觉得有趣,也可能是为了学习更多的Linux知识,或者因为他们有很正式的问题要解决.但是秘密是:自己搭建完美的发行版本不是很困难的一件事.事实上,我们收集了 ...

  6. 【转】objective-c基本数据类型之输出格式符

    原文网址:http://blog.csdn.net/mamong/article/details/8255691 基本数据类型 1. int 输出格式符:%i, %d, %o %x, 2. float ...

  7. 用PowerShell批量收回wsp包

    转:http://www.xuebuyuan.com/168334.html 提供wsp部署的参数:$wspnames:路径下的所有wsp文件名用逗号隔开,如"sumhtestwsp.wsp ...

  8. C#调用C++的DLL函数另一则(delegate) z

    使用DLLImport进行导入函数的事. C#调用C++的函数其实不止这一种方法, 还有一种方法是用delegate申明函数委托进行调用,这种方法略显麻烦,但是可以进行回调并应用指针. 在C#中,首先 ...

  9. yarn队列提交spark任务权限控制

    转载请注明出处:http://www.cnblogs.com/xiaodf/ 1 CapacityScheduler 1.1 模型介绍 1.2 资源分配相关参数 1.3 限制应用程序数目相关参数 1. ...

  10. 洛谷P1238 走迷宫

    洛谷1238 走迷宫 题目描述 有一个m*n格的迷宫(表示有m行.n列),其中有可走的也有不可走的,如果用1表示可以走,0表示不可以走,文件读入这m*n个数据和起始点.结束点(起始点和结束点都是用两个 ...