Rsync轻量级远程数据备份同步工具

Rsync 简介

什么是 Rsync?

Rsync 是一个快速且极其灵活的文件复制工具,支持本地与远程文件的同步。

Rsync 采用了“增量传输算法”,能够非常高效地同步远程文件。它只会在两端同步时,发送文件之间的差异部分(delta),无需事先在本地准备好完整的目标文件副本。这种算法极大地节省了带宽和时间。关于 rsync 算法的技术报告包含在本软件包中。

示例

本地文件夹同步到另一个文件夹

rsync -avh /本地/源目录/ /本地/目标目录/

说明:将源目录同步到目标目录,-a 表示归档模式(保留权限、软硬链接等),-v 显示详细过程,-h 以人类可读方式显示大小。

同步本地文件夹到远程服务器

rsync -avh /本地/目录/ user@remote:/远程/目录/

说明:使用 SSH 将本地目录同步到远程服务器目录。

从远程服务器同步文件到本地

rsync -avh user@remote:/远程/目录/ /本地/目录/

说明:将远程服务器上的目录同步回本地。

仅同步文件的变化部分(增量同步)

rsync -avh --progress --partial /本地/目录/ user@remote:/远程/目录/

说明:显示同步进度,并在传输中断时保留已传输部分,适合大文件。

同步时排除某些文件或文件夹

rsync -avh --exclude 'tmp/' --exclude '*.log' /本地/目录/ user@remote:/远程/目录/

说明:同步时排除“tmp”目录和所有“.log”文件。

使用 rsync 守护进程方式同步

rsync -av rsync://user@host/模块名/ /本地/目录/

说明:通过守护进程模式同步远程公开目录到本地。

更多参数和用法请参考手册页:

rsync --help
man rsync

或访问 [官方 manpage][0]。

构建与安装

如果你需要自行编译 rsync,请参考 [INSTALL][1] 页面,了解相关依赖库和可选功能,以获得最佳功能支持。

设置方法

Rsync 通常使用 ssh 或 rsh 与远程系统通信。它不需要设置为 setuid,也无需特殊权限即可安装。但前提是你的系统上已安装并配置好 ssh 或 rsh,建议优先选择 ssh 以获得更好的安全性。

此外,rsync 还可以以“守护进程(daemon)”模式运行,在指定端口监听连接,适用于公共文件分发场景,并支持身份认证与访问控制。

安装步骤:

  1. 运行 configure 脚本,会为你的系统生成合适的 Makefile 和 config.h。
  2. 执行 make 进行编译。
  3. (可选)如需指定本地编译器而不是 gcc,可设置环境变量 CC,然后再运行 configure。
  4. 编译完成后,将 rsync 可执行文件复制到本地与远程系统的 PATH 路径下(或使用 make install)。

Rsync 守护进程

Rsync 支持与“rsync 守护进程”通信,支持匿名或认证模式。关于守护进程的详细配置请参阅 rsyncd.conf(5) 手册。如何连接守护进程详见 rsync(1) 手册。

官方网站

更多信息请访问 [Rsync 官方网站][2]。

你可以在网站上找到 FAQ、下载资源、HTML 版手册等内容。

邮件列表

Rsync 有专门的邮件列表,欢迎任何用户加入讨论并关注新版本发布。也有仅用于发布官方公告的邮件列表。详情见 [邮件列表页面][3]。

问题反馈

请通过 [问题跟踪页面][4] 提交 bug 报告。

该页面列出了当前已知问题,并介绍了如何高效地提交 bug。你也可以在网络上搜索相关错误信息,或查阅 [邮件列表归档][5]。

如需通过邮件反馈 bug,请发送到 rsync@lists.samba.org

如遇安全问题,请发送详细说明至 rsync.project@gmail.com

源码仓库

https://github.com/RsyncProject/rsync/tree/master

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top