就是使用rz、sz

上次我看到我们开发上传服务器文件还在Mac电脑上使用sftp在操作,我问他为啥不考虑下rz和sz呢?Linux中的rz和sz是基于ZModem协议实现的命令行文件传输工具,主要用于本地主机与远程Linux/Unix服务器之间的文件上传和下载操作,无需额外配置FTP服务即可完成传输。

一、功能与用途
• rz(Receive ZMODEM)
执行该命令会弹出本地文件选择窗口,允许从本地计算机上传文件到Linux服务器。例如:输入rz后,终端会触发文件选择对话框,用户可直接选择需上传的文件。• sz(Send ZMODEM)
用于将指定文件从Linux服务器发送(下载)到本地主机。例如:执行sz filename会将该文件通过ZModem协议传输至本地。
在 CentOS 和 Ubuntu 中安装 lrzsz
用于通过 rz
和 sz
命令实现文件传输。
二、安装rz和sz
在 类RHEL系统中,使用 yum
包管理器安装:
sudo yum install lrzsz
对于 CentOS 8+ 或使用 dnf
的情况:sudo dnf install lrzsz
在 Ubuntu/Debian 中,使用 apt
包管理器安装:
sudo apt update # 更新软件包列表(可选但建议)
sudo apt install lrzsz
安装完成后,可以通过以下命令检查是否成功:
which rz sz
正常输出路径(如 /usr/bin/rz
和 /usr/bin/sz
)即表示安装成功。
基本用法
• 上传文件到服务器(本地 → 远程): rz• 下载文件到本地(远程 → 本地): sz 文件名
在使用 rz
和 sz
命令进行文件传输时,需注意以下事项,并确保客户端支持 ZModem 协议:
三、使用 rz
和 sz
的注意事项
1. 仅支持单个文件传输 • rz
和sz
不能直接传输整个目录,如需传输文件夹,需要先打包(如.tar.gz
或.zip
)再传输。• 例如: tar -czvf dir.tar.gz folder/
打包后上传。2. 依赖终端工具支持 ZModem 协议 • rz
和sz
需要 终端客户端支持 ZModem,否则无法触发文件传输窗口。
3. 传输中断的处理 • ZModem 协议支持 断点续传,但需确保传输中断时文件未被损坏。 • 若传输失败,建议删除部分下载的文件后重新尝试。 4. 文件名编码问题 • 若服务器与本地终端的字符编码不一致(如服务器为 UTF-8,本地为 GBK),可能导致中文文件名乱码。 • 解决方法:统一两端的编码格式(推荐 UTF-8)。 5. 传输速度限制 • rz
/sz
的传输效率通常低于scp
或rsync
,适合小文件传输。• 大文件建议使用 scp
、sftp
或lrzsz
的替代工具(如tmux
配合scp
)。6. 权限问题 • 上传文件时,需确保目标目录有写权限;下载文件时,需确保远程文件可读。 • 例如: rz
上传时若提示权限不足,需使用sudo
提权执行命令。7. 避免在脚本中直接使用 • rz
和sz
会触发交互式文件选择窗口,不适合自动化脚本。• 脚本中建议使用非交互式工具(如 scp
或curl
)。
支持 ZModem 的终端客户端
以下常见终端工具支持 rz
/sz
的 ZModem 协议传输:
| 客户端名称 | 平台 | 说明 |
| SecureCRT | rz)和下载( sz)自动触发文件选择窗口。 | |
| Xshell | ||
| iTerm2 | lrzsz并配置触发脚本(如 rx/ sx)。 | |
| ZOC Terminal | rz/ sz。 | |
| Tera Term | TTZModem)才能支持。 | |
| Minicom | ||
| MobaXterm | rz/ sz支持,无需额外配置。 |
典型问题排查
1. 执行 rz
无弹窗• 检查客户端是否支持 ZModem,并确保 SSH 连接未禁用 X11 转发(部分工具依赖此功能)。 • 在 SecureCRT 中,检查 Options > Session Options > Terminal > Xmodem/Zmodem
是否启用。2. 传输过程中断 • 网络不稳定可能导致中断,ZModem 会尝试续传,但建议重新开始以确保完整性。 3. 文件名乱码 • 在终端中设置字符编码为 UTF-8(如 SecureCRT: Options > Session Options > Terminal > Character Encoding
)。
若 rz
/sz
不满足需求,可考虑以下工具:
• 大文件传输:使用 scp
或rsync
(如scp file user@host:/path
)。• 图形化工具:FileZilla(支持 SFTP)、WinSCP。 • 终端内直接编辑:通过 vim
的:put
命令粘贴文件内容,或使用cat
输出文本。
文章转载自运维笔谈,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




