Linux下安装tftp

首先sudo apt-get install tftp安装tftp客户端

安装tftp服务器时遇到了一些问题,最后从网上下载了一个rpm包,然后搞了半天发现ubuntu不支持这个,需要先把rpm包转化为deb包

http://download.youkuaiyun.com/detail/greyleaf2010/2843811

1. 先安装 alien 和 fakeroot 这两个工具,其中前者可以将 rpm 包转换为 deb 包。安装命令为:
    sudo apt-get install alien fakeroot
2. 将需要安装的 rpm 包下载备用,假设为 package.rpm。
3. 使用 alien 将 rpm 包转换为 deb 包:
    fakeroot alien package.rpm
4. 一旦转换成功,我们可以即刻使用以下指令来安装:
    sudo dpkg -i package.deb

(参考http://qyiyunso.blog.163.com/blog/static/35077686201036104912265/


默认情况下tftp服务是被禁用的

sudo vim /etc/xinetd.d/tftp打开tftp配置文件

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

其中将disable置为no,开启tftp服务, server_args参数/tftpboot指明tftp-server的根目录,-c表示可以创建文件然后修改其权限 sudo chmod 777 /tftpboot,以后上传文件和下载文件位置都在/tftpboot。

接着通过sudo /etc/init.d/xinetd restart来启动tftp服务

然后就大功告成了。

在本机测试一下文件上传和下载的功能

tftp 127.0.0.1 或者  tftp localhost

put  <upload file>

get  <download file>

接下来我再从交换机上取配置文件时又遇到了问题,总是报错File transmission failure

接下来百度了半天,最后解决方案是关闭服务器网卡的checksum

首先sudo apt-get installethtool安装ethtool

UNIX/Linux平台下关掉checksum计算:/sbin/ethtool -K(大写) eth0(网卡名) rx off tx off。查看网卡该选项是否打开:/sbin/ethtool -k(小写) eth0(网卡名)。

重启一下电脑,登录交换机telnet即可获取文件

Linux系统下安装tftp并进行烧录可按以下步骤进行: ### 安装TFTP服务 有两种常见的安装方式: - **方式一**:在Ubuntu系统下,使用以下命令安装tftp - hpa和tftpd - hpa: ```bash sudo apt-get install tftp-hpa tftpd-hpa ``` 创建一个TFTP文件夹并给予该目录可读可写可执行权限: ```bash mkdir ~/linux && mkdir ~/linux/tftpboot chmod 777 ~/linux/tftpboot ``` - **方式二**:更新APT包,安装TFTP服务器端相关软件: ```bash sudo apt update sudo apt install xinetd tftp tftpd -y ``` 创建TFTP共享目录,这里使用 `/home/nfs` 为例,并赋予权限: ```bash mkdir /home/nfs sudo chmod -R 777 /home/nfs ``` 编辑指定目录配置文件 `/etc/xinetd.d/tftp`,添加如下代码: ```plaintext service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = /home/nfs disable = no per_source = 11 cps = 100 2 flags = IPv4 } ``` 重启服务: ```bash sudo /etc/init.d/xinetd restart ``` ### 修改配置文件 在 `/etc/default` 下修改tftp服务的配置文件 `tftpd - hpa`: ```bash sudo vim /etc/default/tftp-hpa ``` 修改内容如下: ```plaintext TFTP_USERNAME="tftp" TFTP_DIRECTORY="/tftpboot" TFTP_ADDRESS="0.0.0.0:69" TFTP_OPTIONS="-l -c -s" ``` 说明:`TFTP_DIRECTORY` 处可以改为tftp - server的根目录,参数 `-c` 指定了可以创建文件。创建文件夹 `/tftpboot`,修改权限为666: ```bash mkdir /tftpboot chmod 666 /tftpboot ``` ### 重启tftp服务并检查 重启tftp服务: ```bash service xinetd restart ``` 或 ```bash /etc/xinedt.d/tftp restart ``` 使用查询命令查看tftp服务是否开启: ```bash netstat -a | grep tftp ``` 若显示结果为 `udp 0 0 *:tftp *:*`,表明服务已经开启。可以登陆本机测试,命令如下: ```bash tftp your-ip-address tftp>get tftp>put tftp>q ``` ### 烧录操作 完成上述步骤后,u - boot可以直接登录到主机上进行烧录操作,无需再切换到Windows下用tftpd32.exe来建立服务器 [^1][^2][^3][^4]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值