linux下tftp服务器参数,Linux下TFTP服务的安装、配置和操作

本文介绍如何在Linux环境下配置TFTP服务器,包括安装必要的软件包、配置xinetd服务、设置SELinux、启动与管理TFTP服务等步骤。适用于嵌入式系统开发中文件的远程下载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现。嵌入式linux的tftp开发环境包括两个方面:一是linux服务器端的tftp-server支持,二是嵌入式目标系统的tftp-client支持。因为u-boot本身内置支持tftp-client,所以嵌入式目标系统端就不用配置了。

xinetd(eXtended InterNET services daemon)是新一代的网络守护进程服务程序,又叫超级INTERNET服务器,经常用于管理多种轻量型INTERNET服务,xinetd提供类似于inetd+tcp_wrapper的功能,但是更加强大和安全。

安装tftp服务器:

需要安装xinetd、tftp、tftp-server3软件

1、如果能上网,通过yum安装:

sudo yum install xinetd

sudo yum install tftp

sudo yum install tptp-server

2、如果不能上网,可以直接安装提供的rpm包:

sudo rpm -ivh xinetd-2.3.14-18.fc9.i386.rpm

sudo rpm -ivh tftp-0.48-3.fc9.i386.rpm

sudo rpm -ivhtftp-server-0.48-3.fc9.i386.rpm

配置tftp服务器:

修改/etc/xinetd.d/tftp文件

disable=yes 改为  disable=no

server_args=-s /var/lib/tftpboot  改为  server_args=-s /tftpboot/ -c

修改/etc/sysconfig/selinux文件

SELINUX=disabled  (系统默认是enforcing)要改成disabled

chmod 777 /tftpboot  修改/tftpboot文件夹的权限

启动  service xinetd restart

查看tftp服务是否开启:

netstat -a | grep tftp

显示结果为  udp    0  0 *:tftp    *:*  表示服务已经开启,tftp配置成功

把openwrt-ar71xx-wp543-squashfs-4M-factory.img 文件复制到目录/tftpboot 下

在目录/home/x(目录名)下:

启动tftp服务器

sudo in.tftpd -l /tftpboot

tftp 192.168.0.26(本机的IP地址)

tftp>get a(文件名)  在服务器上下载文件

tftp>put a(文件名)  上传文件到服务器上

tftp>q            退出

启动tftp服务器:

service tftpd-hpa stop      停止tftp服务器

service tftpd-hpa start    开启tftp服务器

service tftpd-hpa stutus    查看tftp运行状态

service tftpd-hpa restart  重启tftp服务器

(注意:文件传输后文件的权限会发生变化)

进入TFTP操作:

connect:连接到远程tftp服务器

mode:文件传输模式

put:上传文件

get:下载文件

quit:退出

verbose:显示详细的处理信息

tarce:显示包路径

status:显示当前状态信息

binary:二进制传输模式

ascii:ascii 传送模式

rexmt:设置包传输的超时时间

timeout:设置重传的超时时间

help:帮助信息

? :帮助信息

-g 表示下载文件 (get)

-p 表示上传文件 (put)

-l 表示本地文件名 (local file)

-r 表示远程主机的文件名 (remote file)

例如,要从远程主机192.168.1.2上下载 embedexpert,则应输入以下命令:

tftp -g -r embedexpert 192.168.1.2

出现的一些问题及原因(解决方法):

1、Transfer time out.

tftpd服务没有启动

2、Error code 0:Permission denied

可能是由SELinux造成的,在FC3和FC3以后的FC版本中SELinux默认的都是开启的,现在要关掉它。

修改文件/etc/sysconfig/selinux,设定SELINUX=disabled,然后重启电脑即可

或者  执行命令system-config-securitylevel打开“安全级别配置”对话框,将SELinux(S)选项中“强制”改为“允许”

3、Error code 1:File not found

指定的文件夹不存在;或tftpd启动参数中没有指定-c选项,允许上传文件

4、Error code 2:Only absolute filenames allowed

/etc/xinetd.d/tftpd文件的设置没设好,只需要将server_args=  改为你自己设定  的服务器文件夹就行了

5、Error code 2:Access violation

    上传的文件要有相应的可读写(覆盖)的权限才能上传,要对文件的权限进行修改  chmod 777 a(文件名)0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值