嵌入式开发——文件系统部署rz、sz命令

这篇具有很好参考价值的文章主要介绍了嵌入式开发——文件系统部署rz、sz命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、rz、sz命令源码下载

下载网址:https://ohse.de/uwe/software/lrzsz.html

2、源码编译

tar -zxvf lrzsz-0.12.20.tar.gz 
cd lrzsz-0.12.20
./configure
make CC=aarch64-mix410-linux-gcc #指定芯片平台的交叉编译链

3、源码编译遇到的问题

3.1、报错打印

嵌入式开发——文件系统部署rz、sz命令

(1)报错显示在编译sz、rz命令时还依赖libnsl.so库,当前编译时找不到libnsl库;
(2)libnsl是Unix/Linux系统下的一个开源C语言库,全称为“network services library”,提供了对许多网络服务程序的网络接口调用。其主要功能包括获取主机名、网络名称解析、套接字操作、RPC服务等;

3.2、获取libnsl库

嵌入式开发——文件系统部署rz、sz命令

(1)去网上下载libnsl库的源码,用芯片平台的交叉编译链进行编译,部署到lrzsz的编译环境中;(编译libnsl可能还会遇到问题,需要自行解决)
(2)在交叉编译链里查找是否存在libnsl库,从上面图片可知,在我使用的交叉编译链里是存在libnsl库的,其中芯片平台对应的是“/opt/aarch64-mix410-linux/target/lib/libnsl-2.31.so”;
总结:缺少的库都可以先去交叉编译链里查找是否存在该库,简单省事;

3.3、修改Makefile

#屏蔽掉原来引用libnsl的地方
#LIBS = -lnsl 
LIBS =

lsz_DEPENDENCIES +=  ../lib/libnsl.so

lrz_DEPENDENCIES =  ../lib/libnsl.so

(1)将“/opt/aarch64-mix410-linux/target/lib/libnsl-2.31.so”拷贝到编译lrzsz编译环境中,我是将其拷贝到lib目录下,重命名为libnsl.so;
(2)按照上面的代码,修改src/Makefile;

4、文件系统部署

编译完成后会在src目录下生成lsz和lrz命令,重命名成rz和sz,直接拷贝到板子文件系统的/bin、/sbin、/usr/bin、/usr/sbin等已经导出到PATH环境变量的其中一个路径即可;

5、rz、sz命令使用

5.1、设置secureCRT软件

嵌入式开发——文件系统部署rz、sz命令

(1)Windows端需要能支持Zmodem的telnet/ssh客户端,比如secureCRT;
(2)使能Zmodem,设置上传和下载的目录,将来从板子下载文件和向板子上传文件都会将文件放在对应的目录;

5.2、从板子下载文件

/var/tmp/share # sz /etc/SigFile
random: crng init done
/var/tmp/share # ./sz_cry /etc/SigFileList 
rz
  zmodem  trl+C ȡ
正在传输 SigFileList...
  100%     939   939 /0:00:01       0   

/var/tmp/share # 

(1)下载命令:sz + 需要下载的文件;
(2)文件会存放在之前设置的下载目录里;

5.3、向板子上传文件

(1)运行命令rz,secureCRT就会弹出文件选择对话框,选好文件之后关闭对话框,文件就会上传到当前目录,注意当前目录要有写权限;
(2)单独使用rz命令会有两个问题:上传中断、上传文件变化,解决办法是使用“rz -be”;
(3)-b:用binary的方式上传下载,不接受字符为ASCII;
(4)-e:强制escape所以控制字符,比如ctrl+x;

推荐

给大家推荐一个学校嵌入式知识的网站,博主在大学时候学习嵌入式知识、找工作的时候都在用这个网站,网站里有C语言、Linux等等的笔试题、面试常问问题等等知识,无论是学习基础知识、面试刷题、交流工作经验都是不错的选择。大家一起进步,欢迎留言交流。
链接:学习神器跳转
嵌入式开发——文件系统部署rz、sz命令
嵌入式开发——文件系统部署rz、sz命令文章来源地址https://www.toymoban.com/news/detail-470784.html

到了这里,关于嵌入式开发——文件系统部署rz、sz命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 关于嵌入式开发的一些信息汇总:嵌入式C开发人员、嵌入式系统Linux

    这篇文章是关于嵌入式开发的一些基本信息,供想入行的人参考。有一些作者本人的想法,以及来自外网的大拿的文章翻译而来,原文链接在此Learning Linux for embedded systems,再次感谢,支持原创。 普通C开发人员和嵌入式C开发人员之间的 基本区别在于 ,因为嵌入式C程序被设

    2024年02月03日
    浏览(45)
  • 【嵌入式开发】开发板设置系统时间

    时钟包括硬件时钟和系统时钟,系统时钟就是linux系统显示的时间,用命令 date 可以显示当前系统时间;硬件时钟就是硬件自身的时间了。它们两者没有关系的,但是可以通过命令设置系统时钟和硬件设置,让它们同步。 Linux系统ARM架构开发板、Xshell软件 date 命令查看系统时

    2024年02月11日
    浏览(32)
  • 《嵌入式系统开发实践》实验三 进程通信

    一、 实验目的 掌握无名管道与有名管道的进程通信; 掌握消息队列的读写操作; 掌握共享内存的通信机制。 二、 实验任务与要求 管道读写程序的编写与应用; 消息队列的发送和接收程序的编写和应用; 共享内存的创建、连接和分离编程和应用。 三、 实验工具和环境

    2024年02月07日
    浏览(32)
  • 嵌入式实时操作系统的设计与开发

    在RTOS中,时钟具有非常重要的作用,通过时钟可实现延时任务、周期性触发任务执行、任务有限等待的计时。 大多数嵌入式系统有两种时钟源,分别为实时时钟RTC(Real-Time Clock)和定时器/计数器。 实时时钟一般是靠电池供电,即使系统断电,也可以维持日期和时间。由于实

    2024年02月11日
    浏览(27)
  • 嵌入式实时操作系统的设计与开发(一)

    以一款简单、易学的嵌入式开发平台ARM Mini2440(CPU是三星ARM 9系列的ARM S3C2440)为例,通过具体代码实现,介绍如何从裸板入手设计简单的轮询系统、前后台系统,以及如何一步一步在ARM Mini2440上编写RTOS内核,到如何让RTOS内核支持多核嵌入式处理器。 aCoral是2009年创建的开源

    2024年02月12日
    浏览(27)
  • 嵌入式实时操作系统的设计与开发(十)

    RTOS的引导是指将操作系统装入内存并开始执行的过程。在嵌入式系统的实际应用中,针对不同应用环境,对时间效率和空间效率有不同的要求。因此,操作系统启动时应充分考虑这两种限制。 时间限制主要包括两种情况:系统要求快速启动和系统启动后要求程序能实时运行

    2024年02月07日
    浏览(57)
  • lv3 嵌入式开发-3 linux shell命令(文件搜索、文件处理、压缩)

    目录 1 查看文件相关命令 1.1 常用命令 1.2 硬链接和软链接 2 文件搜索相关命令 2.1 查找文件命令 2.2 查找文件内容命令 2.3 其他相关命令 3 文件处理相关命令 3.1 cut  3.2 sed 过滤 3.3 awk 匹配 4 解压缩相关命令 4.1 解压缩文件的意义 4.2 解压缩相关命令 cat - concatenate files and pri

    2024年02月10日
    浏览(42)
  • 计算机三级嵌入式系统开发 知识点笔记

    目录为搜索词,详情看每一节后图片 思维导图已上传,点击这里下载 1.1 SoC IP核 1.2 1.2.1 ASCII GB2312 GB18030 UTF8 UTF16 超文本 字符形状两种描述方法 1.2.2 数字图像 1.2.3 音频 1.3 1.3.1 传输介质分为 有线通信 和 无线通信 数字通信的传输技术 1.3.3 IP地址 第一章图片 2.1 2.1.1 指令集分类

    2024年02月03日
    浏览(77)
  • 【嵌入式系统开发】Keil 实现十次作业详细代码

          🔥《嵌入式系统开发》系列专栏主要以LPC1100系列微控制器为硬件平台,详细介绍Cortex—-M0微控制器的原理与开发技术,基于keil仿真软件平台设计最小应用系统板和具有在板仿真器的口袋开发板以及相关例程。       🔥本文已收录于嵌入式系统开发系列专栏:嵌入式

    2024年02月08日
    浏览(36)
  • 修改嵌入式 ARM Linux 内核映像中的文件系统

    zImage 是编译内核后在 arch/arm/boot 目录下生成的一个已经压缩过的内核映像。通常我们不会使用编译生成的原始内核映像 vmlinux ,因其体积很大。因此, zImage 是我们最常见的内核二进制,可以直接嵌入到固件,也可以直接使用 qemu 进行调试。当然,在 32 位嵌入式领域还能见到

    2024年02月10日
    浏览(67)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包