当前位置: 首页 > news >正文

Linux的文件上传下载的lrzsz库的安装与使用

以下是关于 Linux 下 lrzsz 库的安装与使用 的详细指南,适用于通过终端(如 SecureCRT、Xshell、MobaXterm 等)使用 ZMODEM 协议快速上传和下载文件:


一、lrzsz 简介

  • 功能:提供 rz(接收文件)和 sz(发送文件)命令,基于 ZMODEM 协议 在终端中直接传输文件。
  • 适用场景
    • 通过串口或 SSH 连接到远程服务器,且终端支持 ZMODEM(如 SecureCRT、Xshell)。
    • 无图形界面环境下的简单文件传输。
  • 优点:操作简单,无需配置额外服务(如 FTP/SCP)。
  • 缺点:依赖终端兼容性,传输大文件时可能不稳定。

二、安装 lrzsz

1. 不同 Linux 发行版的安装方法
  • Debian/Ubuntu
    sudo apt update
    sudo apt install lrzsz
    
  • CentOS/RHEL
    sudo yum install lrzsz
    
  • Arch/Manjaro
    sudo pacman -S lrzsz
    
2. 验证安装

安装完成后,检查 rzsz 是否可用:

which rz sz
# 输出示例:/usr/bin/rz  /usr/bin/sz

三、使用 lrzsz

1. 上传文件到服务器(本地 → 远程)
  • 命令rz
  • 操作步骤
    1. 在终端中进入要保存文件的目录(如 cd ~/downloads)。
    2. 输入 rz 命令。
    3. 终端会弹出文件选择对话框(需终端支持),选择本地文件即可上传。
  • 示例
    cd /tmp  # 切换到服务器接收目录
    rz       # 弹出对话框选择本地文件
    
2. 下载文件到本地(远程 → 本地)
  • 命令sz <file>
  • 操作步骤
    1. 在终端中进入文件所在目录。
    2. 输入 sz 文件名
    3. 终端会弹出保存对话框,选择本地保存路径。
  • 示例
    sz /var/log/nginx/error.log  # 下载日志文件
    
3. 常用选项
选项说明
-y覆盖已存在的文件
-e转义控制字符(兼容旧终端)
-b以二进制模式传输

示例:

rz -y      # 上传时覆盖同名文件
sz -b file # 以二进制模式下载文件

四、注意事项

  1. 终端兼容性

    • 确保终端工具(如 SecureCRT、Xshell)启用了 ZMODEM 支持(通常在连接设置中配置)。
    • 部分工具(如 macOS 默认终端、GNOME Terminal)不支持 ZMODEM,需使用第三方工具(如 lrzsz + expect 脚本)。
  2. 文件路径

    • rz 上传的文件默认保存在当前终端的工作目录。
    • sz 下载时需要指定文件的绝对路径或相对路径。
  3. 大文件传输

    • lrzsz 适合小文件传输,大文件可能因网络中断导致失败。建议使用 split 分割文件或改用 scp/rsync

五、常见问题解决

1. 执行 szrz 无反应
  • 原因:终端未启用 ZMODEM 协议。
  • 解决
    • 检查终端设置(如 SecureCRT:Options → Session Options → Connection → ZMODEM)。
    • 换用支持 ZMODEM 的终端工具(如 MobaXterm)。
2. 传输中断或失败
  • 原因:网络不稳定或文件过大。
  • 解决
    • 重试传输。
    • 使用 split 分割文件:
      split -b 100M large_file.zip large_file_part_  # 分割为 100MB 的块
      sz large_file_part_*                           # 逐个传输
      
3. 安装后命令仍不可用
  • 原因:未正确安装或路径未配置。
  • 解决
    sudo apt install --reinstall lrzsz  # 重新安装
    

六、替代方案

如果 lrzsz 无法满足需求,可考虑以下工具:

  • SCP/SSHscp user@host:/remote/file /local/path
  • rsync:增量同步大文件。
  • curl/wget:通过 HTTP/FTP 下载。

掌握 lrzsz 后,你可以在终端中快速完成小文件传输,尤其适合无图形界面的服务器环境!

相关文章:

  • 《当人工智能遇上广域网:跨越地理距离的通信变革》
  • 08_双向循环神经网络
  • React 中useMemo和useCallback Hook 的作用,在什么场景下使用它们?
  • 图书管理系统系统-Java、SpringBoot、Vue和MySQL开发的图书馆管理系统
  • 文心快码 使用体验与介绍
  • 分布式算法:Paxos Raft 两种共识算法
  • 结合代码理解Spring AOP的概念(切面、切入点、连接点等)
  • Rocky Linux 软件安装:Last metadata expiration check:
  • leetcode_双指针 15.三数之和
  • 【前端扫盲】liquid模板语言
  • css重点知识汇总(二)
  • Jboss
  • [c语言日寄]枚举类型
  • Spring Boot框架中常用注解
  • 自然资源数据要素支撑场景建设
  • QEMU源码全解析 —— 块设备虚拟化(7)
  • 探秘鸿蒙 HarmonyOS NEXT:鸿蒙存储核心技术全解析
  • SLAM十四讲【四】相机与图像
  • MySQL 字符集
  • 华为昇腾AscendCL推理引擎入门
  • 君亭酒店:2024年营业收入约6.76亿元, “酒店行业传统增长模式面临巨大挑战”
  • 现场|西岸美术馆与蓬皮杜启动新五年合作,新展今开幕
  • 早睡1小时,变化有多惊人?第一个就没想到
  • 国家发改委:是否进口美国饲料粮、油料不会影响我国粮食供应
  • 四川苍溪县教育局通报“工作人员辱骂举报学生”:停职检查
  • 戴昕谈隐私、数据、声誉与法律现实主义