Rocky Linux 下 rsync 是什么,它解决什么问题

什么是 rsync

rsync 是一款开源的文件同步与传输工具,由 Andrew Tridgell 与 Paul Mackerras 于 1996 年发布。它的核心定位是:在两台主机(或同一主机的两个目录)之间,高效地复制和同步文件和目录。与简单的 cp 不同,rsync 默认只传输“变化的部分”,因此在处理大文件或大量小文件时极其省时省带宽。

在 Rocky Linux 这类 RHEL 系发行版里,rsync 是企业运维、备份、集群文件分发的事实标准工具之一——系统自带仓库即可安装,且与系统自带的 SELinux、firewalld、systemd 深度兼容。

rsync 的底层原理:滚动校验算法

rsync 之所以能“只传变化的那一块”,靠的是它的滚动校验(rolling checksum)算法(基于 Adler-32 与 MD5 的强弱校验组合):

  • 发送方把源文件切成若干固定大小的块,对每个块计算弱校验和(rolling checksum)与强校验和(MD5)。
  • 接收方已有旧版本文件,逐字节滑动计算弱校验和,快速匹配哪些块在两端相同。
  • 只有“接收方没有 / 已变化”的块才会通过网络传过去,其余直接复用旧数据重新拼装。

这就是为什么第一次同步是“全量”,之后每次只传增量——哪怕你只改了一个 2GB 视频中间几 MB,也只传那几 MB。

rsync 与常见工具对比

工具 增量传输 压缩 加密 典型用途
cp 本机复制
scp 否(全文件覆盖) 可选 -C 是(SSH) 一次性远程拷贝
ftp 否(明文) 早期文件上传
unison 是(双向) 双向双向同步
rsync 是(单向/双向均可) 是 -z 是(走 SSH 或 daemon) 备份 / 镜像 / 分发

Rocky Linux 中的 rsync 处于什么位置

Rocky Linux 作为 CentOS 的继任者、RHEL 的 1:1 兼容克隆,在 rsync 使用上和 RHEL 系完全一致:

  • 包管理:用 dnf install rsync(旧称 yum)即可安装,软件来自 BaseOS / AppStream 仓库。
  • 安全模块:Rocky 默认开启 SELinux(enforcing),rsync 守护进程相关的上下文是 rsync_exec_t / rsync_data_t,配置不当会被拦截,本文后面会讲。
  • 防火墙:用 firewalld 管理,放开 rsync daemon 端口(873/tcp)要单独放行。
  • 服务管理:用 systemd,定时任务既可以用 cron,也可以用 systemd timer。

接下来的四篇会依次讲:rsync 的优点、在 Rocky 上的安装方式、常用命令参数、以及结合 systemd / rsyncd / firewalld 的典型实战配置。

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容