一、安装相关安装包

tftpd(服务端),tftp(客户端)

sudo apt-get install tftp-hpa tftpd-hpa

安装xinetd

sudo apt-get install xinetd

二、配置tftp服务器

1、修改 /etc/default/tftpd-hpa

$sudo vim /etc/default/tftpd-hpa

将内容修改成:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/tftpboot"   #tftp服务器的工作目录

TFTP_ADDRESS="0.0.0.0:69"

TFTP_OPTIONS="-l -c -s"

2、修改/etc/xinetd.d/tftp

如果/etc/xinetd.d/目录下没有tftp文件,就创建一个。内容为:

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

 三、创建tftp服务器目录,并更改权限

创建目录

$sudo mkdir /tftpboot

更改权限

$sudu chmod  /tftpboot

四、重新启动服务

$sudo service tftpd-hpa restart
$sudo /etc/init.d/xinetd reload
$sudo /etc/init.d/xinetd restart

五、测试

测试原理:

  虚拟机Ubuntu上搭建了一个tftp服务器,并且其服务器目录为/tftpboot。

  在本机上进行自我测试,主要包括两个功能----上传和下载。

1、在服务器目录新建一个文件download.bin

$cd /tftpboot
$vim test.bin

执行完以上两条指令后,然后对vi编辑器保存,退出。

2、进入一个非/tftpboot的文件夹下,并创建一个文件upload.bin

$sudo mkdir /share
$cd /share
$vim upload.bin

3、进入tftp命令模式

$tftp 192.168.158.130 (本机的ip地址) 或者 $tftp localhost

4、测试从tftp服务器下载文件

$tftp> get download.bin //从tftp服务器下载download.bin
$tftp> quit //退出

查看是否下载成功(实际上执行完第一条命令没有提示信息,就说明已经成功了)

$ls

5、测试从tftp服务器上传文件

$tftp> put upload.bin //从tftp服务器上传upload.bin
$tftp> quit //退出

查看是否上传成功(实际上执行完第一条命令没有提示信息,就说明已经成功了)

$cd /tftpboot
$ls

后记

众多资料都说,实现tftp文件传输需要将linux系统的防火墙关闭,关闭命令:

# ufw disable

参考资料:Ubuntu下配置tftp服务和NFS服务

ubuntu 10.04下的配置tftp服务器

在Ubuntu12.0.4下搭建TFTP服务器的更多相关文章

  1. ubuntu 14.04LTS 环境下搭建tftp服务器

    花费我一整天的时间在 ubuntu 14.04LTS 环境下搭建tftp服务器,网上好多资料参差不齐,简单来说,TFTP(Trivial File Transfer Protocol),是一个基于UD ...

  2. Ubuntu下搭建tftp服务器最简单方法

    今天开始调试ARM的板子,要通过tftp下载到板子上,所以又要配置tftp服务器,真的烦死了… (本人酷爱装系统,所以经常都要搞配置) 因为之前已经在Ubuntu下搭建过很多次tftp服务器了,但是一 ...

  3. 如何在Ubuntu下搭建tftp服务器

    远程桌面连接工具   今天开始调试arm的板子,要通过tftp下载到板子上,所以又要配置tftp服务器,真的烦死了… (本人酷爱装系统,所以经常都要搞配置) 因为之前已经在Ubuntu下搭建过很多次t ...

  4. 在ubuntu12.0.4上搭建samba服务器以实现文件共享

    在安装之前samba服务器之前,先进行以下配置和测试. <壹> 准备工作 一.NAT联网方式 (1)硬件连接 无需网线,无需路由器 (2)虚拟机选择NAT连接方式 (3)测试网络通不通 在 ...

  5. Ubuntu 12.04 搭建TFTP服务器

    吐槽先:在Ubuntu上搭建TFTP服务器,网上搜到一堆资料,可惜基本都是部分能用,至于哪些部分能用还要自己摸索着试出来,郁闷之情仅次于找不到任何资料…… ---------------------- ...

  6. 在Win10下搭建web服务器,使用本机IP不能访问,但是使用localhos或127.0.0.1可以正常访问的解决办法

    最近在在Win10下搭建web服务器,发现通过windows自带的浏览器win10 edge浏览器使用本机IP不能放问,但是使用localhos或127.0.0.1可以正常访问, 后来无意发现,使用w ...

  7. centos6环境下搭建irc服务器

    问题描述 有时候逛技术社区,经常会发现有个叫IRC的东西存在,想搭建下看看到底是个什么东西 说明: 操作系统环境为CentOS6.5_64 安装irc服务器 通过yum进行安装,命令如下: yum i ...

  8. Ubuntu 14.04 下搭建SVN服务器 svn://

    Ubuntu 14.04 下搭建SVN服务器 svn:// 安装软件包: sudo apt-get install subversion 之后选择SVN服务文件及配置文件的放置位置.我放在了/srv下 ...

  9. Windows下搭建Git 服务器: BONOBO GIT SERVER + TortoiseGit

    本文将介绍如何在Windows操作系统下搭建Git服务器和客户端.服务器端采用的是Bonobo Git Server,一款用ASP.NET MVC开发的Git源代码管理工具,界面简洁,基于Web方式配 ...

随机推荐

  1. 细谈Java

    重载:相同函数名,不同参数. 重写(覆写):父类和子类之间的,子类重写了父类的方法. java的多态:重载+覆写 1.      Main方法: 是public的,也是static,也是void的,参 ...

  2. MySQL基本配置

    >>添加环境变量 把MySQL Server的bin目录添加到系统path中. >>MySQL启动和停止命令 net start mysql56 net stop mysql5 ...

  3. HIBERNATE 01

    2017年1月8日 {LJ?Dragon}[标题]Hibernate基础知识简介_01 {LJ?Dragon}[Links]Hibernate注解详解 {LJ?Dragon}[Daily]特种部队2, ...

  4. web项目学习之spring-security

    转自<http://liukai.iteye.com/blog/982088> spring security功能点总结: 1. 登录控制 2. 权限控制(用户菜单的显示,功能点访问控制) ...

  5. iscsi介绍及iscsi target配置

    iSCSI 主要是透过 TCP/IP 的技术,将储存设备端透过 iSCSI target (iSCSI 目标) 功能,做成可以提供磁盘的服务器端,再透过 iSCSI initiator (iSCSI ...

  6. Qt 学习之路:Canvas

    在 QML 刚刚被引入到 Qt 4 的那段时间,人们往往在讨论 Qt Quick 是不是需要一个椭圆组件.由此,人们又联想到,是不是还需要其它的形状?这种没玩没了的联想导致了一个最直接的结果:除了圆角 ...

  7. Annotation Type @bean,@Import,@configuration使用--官方文档

    @Target(value={METHOD,ANNOTATION_TYPE}) @Retention(value=RUNTIME) @Documented public @interface Bean ...

  8. Entity Framework CodeFirst------使用CodeFirst方式建立数据库连接(一)

    本文分步演练介绍通过 Code First 开发建立新数据库.这个方案包括建立不存在的数据库(Code First 创建)或者空数据库(Code First 向它添加新表).借助 Code First ...

  9. css考核点整理(九)-有几种文字替换方式,之间的优缺点

    有几种文字替换方式,之间的优缺点

  10. mvc form

    当点击提交按钮后,想在Controll里取到Form里的数据. 必须在控件上设置name属性 例如<input type='text',name='userId'/>, 在controll ...