搭建 tftp 服务器

TFTP(Trivial File Transfer Protocol,简单文件传输协议),是一个基于 UDP 协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于开销不大、不复杂的应用场合。 TFTP 协议专门为小文件传输而设计,只能从服务器上获取文件,或者向服务器写入文件,不能列出目录,也不能进行认证。在嵌入式 Linux 开发中,TFTP 协议在很多场合都被用到,甚至是必不可少的,特别是在内核调试阶段,在 U-Boot 下通过 TFTP 协议从服务器上加载内核并运行,既方便又快捷。一般的发行版默认都没有安装 TFTP 服务以及 TFTP 服务器。TFTP 服务依赖于网络守护进程服务程序,可选择安装 inetd 或者升级版的 xinetd,然后安装 tftp 和 tftp-server,接着修改或者创建/etc/xinetd.d/tftp 配置文件,最后重启 xinetd,启动 TFTP 服务。无论采用什么发行版,TFTP 服务器的安装都是这样的流程,只不过不同发行版的安装命令不同而已,下面以 ubuntu 为例进行说明。安装 xinetd: root@ubuntu:~$ apt-get install xinetd 安装 tftp 和 tftpd: root@ubuntu:~$ apt-get install tftp tftpd 或者安装 tftp 的增强版本 tftp-hpa: root@ubuntu:~$ apt-get install tftp-hpa tftpd-hpa 建立配置文件。建立/etc/xinetd.d/tftp 文件,写入如下内容: service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot/ disable = no per_source = 11 cps = 100 2 flags = IPv4 } 其中 server_args 设置的/var/lib/tftpboot 目录是 tftp 服务器的目录,设置其访问权限为 777: root@ubuntu:~$ mkdir /var/lib/tftpboot/ root@ubuntu:~$ chmod 777 /var/lib/tftpboot/ 启动或者重启 xinetd 服务: root@ubuntu:~$ /etc/init.d/xinetd start 或者/etc/init.d/xinetd restart 本机测试。在/var/lib/tftpboot 目录下创建一个 text.c 文件,启动另外一个终端,输入: root@ubuntu:~$ tftp 192.168.0.10 (PC Host IP Address) tftp> get text.c #获取 text 文件 tftp> q #退出 tftp 在终端输入 ls 命令,可以看到当前目录下看到/var/lib/tftpboot 获取到的 text.c 文件

你可能感兴趣的:(搭建 tftp 服务器)