Linux —— tftp 使用

提示:tftp 命令在 uBoot 系统和 Linux 系统下的使用是不一样的


前言

在 Linux 移植过程或裸机开发中,经常要使用到 tftp 命令,本文围绕该命令相关的网络配置及使用做出记录,本文中,开发电脑命名为上位机,新移植硬件或开发板均称为开发板。


一、网络条件

本文网络条件限定:开发板与上位机处于同个路由器情况下,开发板与上位机均能正常连接路由器。
设备与路由器是否能正常连接,首先检查设备 ip 是否正常,然后可以使用 ping 命令进行测试,处于同一网段的主机才能 ping 通。设备需要处于同一网段
对于开发板仅有 uBoot 状态,需要手动设置 IP,如果是首次 Linux 启动成功,也需要手动设置 IP。
开发板与上位机可以 ping 通,并且上位机关闭了防火墙,才能使用 tftp 获取文件。

tftp 的使用需要手动关闭防火墙,不然无法获取文件
Ubuntu 下关闭防火墙的命令为:sudo ufw disable
windows 下关闭杀毒软件所带的防火墙即可

开发板 uBoot 命令行设置 IP 的相关命令为:

// 设置开发板 IP
setenv ipaddr 192.168.31.9
// 设置开发板网卡地址,uBoot 阶段随意设置,跟其他设备不冲突即可
setenv ethaddr 00:04:9f:04:d2:35
// 设置网关地址
setenv gatewayip 192.168.31.1
// 设置子网掩码
setenv netmask 255.255.255.0
// 设置上位机地址
setenv serverip 192.168.31.7
// 保存环境变量,只用一次的话不需要保存
saveenv
ping 192.168.31.7

uBoot 命令一般还还配置有 env set / env print / env save,可以替代 setenv
配置开发板网卡地址后,也可以用 dhcp 命令自动获取下服务器信息

开发板 Linux 系统下如果不能自动获取 IP,那么也需要手动设置 IP 并且重启网卡,相关命令为:

ifconfig eth0 up
udhcpc -i eth0
ifconfig

二、使用 tftp 上位机需要如何配置

使用 tftp 命令的上位机系统一般为 Linux 系统,本文以 uBuntu 为例。

1. 首先在 UBuntu 上安装 xinetd ,相关命令为:

sudo apt-get install xinetd

2. 完成安装后,更改 xinetd.conf 配置

完成安装后,查看 /etc/ 目录下是否存在 xinetd.conf 文件,没有的话需要自己生成。打开 xinetd.conf 文件后,编辑 xinetd.conf 文件如下:

# Simple configuration file for xinetd
# 
# Some defaults, and include /etc/xinetd.d/ 
defaults 
{ 
# Please note that you need a log_type line to be able to use log_on_success 
# and log_on_failure. The default is the following : 
# log_type = SYSLOG daemon info 
} 
includedir /etc/xinetd.d

3. 新建文件传输目录

在上位机新建 tftp 传输用目录,这里建立在/home/zona/linux目录下,目录名为tftp。将tftp目录赋予可读可写可执行权限,相关代码为:

mkdir -p /home/zona/linux/tftp 
sudo chmod 777 /home/zona/linux/tftp/ 
cd /home/zona/linux/ 
ls

4. 开启 tftp-hpa 和 tftpd-hpa 服务程序

在 UBuntu 下开启 tftp-hpa 和 tftpd-hpa 服务程序,相关命令为:

sudo apt-get install tftp-hpa tftpd-hpa

5. 将 tftp 服务定位至文件目录

安装好 tftp-hpa 和 tftpd-hpa 服务程序后,打开 tftpd-hpa 配置文件,修改我们自己建立的文件目录为 tftp 服务器工作目录,修改配置文件的命令为:

sudo vi /etc/default/tftpd-hpa

修改(没有的话就新建)配置文件 /etc/xinetd.d/tftp
更改为:

server tftp 
{ 
socket_type = dgram 
wait = yes 
disable = no 
user = root 
protocol = udp 
server = /usr/sbin/in.tftpd 
server_args = -s /home/zona/linux/tftp -c
#log_on_success += PID HOST DURATION 
#log_on_failure += HOST per_source = 11 cps =100 2 flags =IPv4 
}

记得更改服务路径为自己新建文件夹的路径

6. 保存后重启

保存配置文件后,重启 tftp 服务,相关命令为:

sudo service tftpd-hpa restart
sodu service xinetd restart

三、开发板上 tftp 的使用

1.uBoot 系统下

由于没有文件系统支持,所以 tftp 命令会将下载的文件放在内存上指定的位置处,相关命令如下:

tftp 0x48000000 shall.bin

2. Linux 系统下

Linux 系统下使用 tftp 服务,上位机中新建的 tftp 文件夹下的 文件将会被下载至开发板中当前目录下,Linux 系统默认新下载的文件将会被去除可执行权限,如果新下载的文件是需要运行的文件,那么下载后记得增加权限后才能使用。

tftp -g -r shall.bin 192.168.31.182

总结

在开发板挂接好 nfs 文件系统后,一般将不会再使用 tftp 命令来进行文件下载,本文将 tftp 使用方式记录下来,备忘。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/38156.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 之TFTP的使用

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

嵌入式linux与windows之间的tftp文件传输(保姆级)

目录 前言一、为什么要文件传输二、利用共享文件夹(简要流程)三、tftp传输与环境搭建四、传输前的准备工作五、测试准备工作是否完成六、传输文件6.1、windows中tftp32的配置6.2、嵌入式Linux(板子)中获取或发送文件6.2.1、tftp命令用法 前言 在我们接触嵌入式Linux之前&#…

用于医疗领域的聊天机器人ChatDoctor

ChatGPT系列文章 文章目录 ChatGPT系列文章ChatDoctor数据集模型训练参考资料 ChatDoctor ChatDoctor: A Medical Chat Model Fine-tuned on LLaMA Model using Medical Domain Knowledge 论文地址:https://arxiv.org/pdf/2303.14070.pdf 在通用领域中的大型语言…

2021年中国互联网行业投融资运行现状及未来发展趋势分析[图]

互联网指的是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。 一、全球互联网行业投融资运行现状 国际环境更趋复杂严峻,世界经济复苏放缓,通胀压力上升与疫情蔓延交织。2021年…

2021年中国企业风险投资发展现状及未来发展趋势分析[图]

企业风险投资是指有明确主营业务的非金融企业在其内部和外部所进行的风险投资活动。企业从事风险投资的形式主要有两种:一种是把用于风险投资的资金委托给专业的风险投资公司进行管理,由其成立的投资基金根据委托方的战略需要选择投资目标;另…

最强对话模型 ChatGPT 向 Google 搜索发起挑战

GPT-3 发布的两年后,我们没等来它的亲弟弟 GPT-4,而是在今天亲眼见证了 OpenAI 带来了一种全新的 AI 聊天机器人——ChatGPT,也可以称之为是 GPT-3 家族里面的亲戚,它不仅可以解释代码、编写情景喜剧脚本,也可以为用户…

Google 新一代音乐识别

文 / Google AI 苏黎世办公室 James Lyon 2017 年,我们发布了具有闻曲知音功能的 Pixel 2,就是利用深度神经网络为移动设备带来低功耗、始终开启的音乐识别功能。在开发 “闻曲知音” 时,我们的目标是打造一个小巧高效的音乐识别器&#xff0…

谷歌AudioLM :通过歌曲片段生成后续的音乐

AudioLM 是 Google 的新模型,能够生成与提示风格相同的音乐。该模型还能够生成复杂的声音,例如钢琴音乐或人的对话。结果是它似乎与原版没有区别,这是十分让人惊讶的。 为什么生成音乐如此困难? 创作音乐并不是一件容易的事。生成音频信号&…

“程序员交友网站” SO 突然裁员 10%,网友:ChatGPT 出来后就不咋用了

在ChatGPT影响下,知名开发者问答社区Stack Overflow撑不住要裁员了! 随着用户大规模转战ChatGPT,Stack Overflow访问量大幅骤降,且盈利情况不容乐观。 CEO Prashanth Chandrasekar在公开信中坦言:正处于困难时期。 具…

巴比特 | 元宇宙每日必读:浙江发布2023年元宇宙产业发展工作要点,6月底前组建元宇宙产业联盟,年底打造20家“专精特新”企业...

摘要:据浙江省发改委官网 4 月 24 日消息,浙江省发改委等 5 部门近日联合印发《浙江省元宇宙产业发展 2023 年工作要点》。《工作要点》制定了十六项主要任务,并提出在2023 年 4 月底前建立元宇宙部门工作协同机制;6 月底前组建元…

免费版GPT-4!美国AI初创公司推出Forefront Chat,火到官网崩溃

免费版 GPT-4 到底香不香? AI初创企业正式推出Forefront Chat 近日,Forefront AI 正式推出 Forefront Chat,允许用户免费体验 GPT-4 的强大功能。ForeFront AI 是一家总部位于纽约的软件开发公司,联合创始人分别为 Jimmy Grease…

VTK笔记-生成MIP图像-vtkImageSlabReslice类

MIP MIP(Maximum/Minimum Intensity Projection),最大/最小密度投影重建。   MIP可以较真实地反应组织密度差异,使得血管的异常改变、形态、走形强化;但是只适用于外观形态的显示。   在容积扫描数据中对每条径线上…

重温马云英文演讲:最伟大的成功

“机会在哪呢?”每当创业者发出这个疑问,我们就该重温马云的这段英文演讲,让奋斗的热血重新沸腾起来。你有什么。你有年轻的身体,你有奇妙的想法,你有乐观的心态,你有无限的可能性! 演讲全文&am…

马云退隐前,在年会上说了最重要的三件事

作者:黄小斜 今天是9月10号教师节,也是马老师卸任阿里巴巴董事长的日子,同时也是阿里巴巴召开20周年年会的日子。有幸抽中了门票,在现场见证这具有历史意义的一幕,马老师在中场时给我们带来了一段演讲,也是…

阿里巴巴CTO独家自述:CTO就是要给CEO扫清障碍和风险

CTO可能不是思想家,但一定是行动派。 本文来自《云栖战略参考》第二期,过程中鲁肃非常坦率地探讨了一位合格CTO应该具备的素质,以及他自己一路摔打成长的心路历程。 一 我的经历 我的经历很简单,2004年之前一直在学校读书&#x…

马云现身西班牙度假 半年多来首次在境外露面

这半年里,马云公开露面的次数不到三次,就连前段时间的世界互联网大会也不见他的身影。 极少数出现在公众视野的马老师似乎在努力低调,但是他的一举一动仍然受人关注。 西班牙多家媒体10月19日报道,马云上周六飞抵西班牙, 在伊维…

【历史上的今天】8 月 22 日:改变世界的程序员们;网络直播的鼻祖;何小鹏离开阿里巴巴

整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。 今天 2022 年 8 月 22 日。历史上的今天,Masatoshi Shima 出生,他和 英特尔(Intel) 合作设计的芯片让第一个微处理器 Intel 400…

马来西亚热情拥抱阿里巴巴 马云倡议的eWTP首次落地海外

摘要:3月22日,马来西亚总理纳吉布与阿里巴巴集团董事局主席马云一同出现在吉隆坡一场盛大启动仪式上,他们将共同见证马云的eWTP理念落地马来西亚。 3月22日,在邀请阿里巴巴集团董事局主席马云、阿里巴巴集团CEO张勇、蚂蚁金服集团…

基于GPT4All的大型语言模型设计生态系统

GPT4All 一套专为强大、定制的大型语言模型设计的生态系统,能够在消费级CPU上本地运行。在GPT4All中,所使用的模型是一个3GB至8GB的文件,读者可以自行下载该文件,并将其插入到GPT4All的开源生态系统软件中。这一软件生态系统由Nomic AI提供支持并进行维护,其目的是确保系统…

chatgpt赋能python:Python在数据可视化中的应用:如何用Python画图

Python在数据可视化中的应用:如何用Python画图 介绍 随着数据科学和人工智能的不断发展,数据可视化成为了一种重要的工具。通过绘制图表,我们可以更直观地理解数据之间的关系,并发现其中的规律和趋势。Python作为一种灵活的编程…