📘 rsync 详细教程

rsync 是一个用于复制和同步文件的强大工具。它具有高效、灵活和增量复制的特性,是文件迁移和备份的理想选择。

🚀 开始之前

确保你的系统中已经安装了 rsync。大多数现代的 Linux 分发版和 macOS 都默认安装了 rsync

你可以通过以下命令来检查:

1
rsync --version

1️⃣ 基本使用

基本语法

1
rsync [OPTION]... SRC... [DEST]
  • OPTION - 用于指定复制的方式和所需的参数。
  • SRC - 源文件或目录。
  • DEST - 目标文件或目录。

基本示例

1
rsync -av source_folder/ destination_folder/

这将复制 source_folder 中的内容到 destination_folder 中,同时保留文件属性。

2️⃣ 选项和参数

-a (归档模式)

这个选项是多个选项的组合,包括 -r (递归复制),-l (复制符号链接),-p (保留文件权限),-t (保留文件时间戳) 等。通常用于确保源文件的属性在目标中得到保留。

-v (详细模式)

显示复制过程中的详细信息。

--delete

如果源中没有某个文件,但目标中有,这个选项会删除目标中的该文件,确保源和目标保持一致。

--exclude

排除特定的文件或目录。

1
rsync -av --exclude 'tmp/' source_folder/ destination_folder/

上面的命令会复制 source_folderdestination_folder,但会排除 tmp/ 目录。

3️⃣ 远程同步

你可以使用 rsync 在本地和远程服务器之间进行复制。

语法

1
rsync [OPTION]... SRC... [USER@]HOST:DEST

1
rsync [OPTION]... [USER@]HOST:SRC DEST

示例

1
rsync -av local_folder/ username@remote_server:/path/to/remote_folder/

4️⃣ 增量备份

由于 rsync 只复制文件之间的差异,所以它非常适合进行增量备份。

使用 --link-dest 选项,你可以创建一个与前一个备份相链接的新备份,但只包括自上次备份以来发生变化的文件。

5️⃣ 带宽和速度限制

使用 --bwlimit 选项,你可以限制 rsync 的数据传输速度。

1
rsync -av --bwlimit=1000 source_folder/ destination_folder/

上述命令将限制传输速度为 1000KB/s。

🔍 结论

rsync 是一个强大且灵活的工具,非常适合文件迁移和备份任务。希望本教程能帮助你掌握其基本用法和高级特性。


如果你有任何其他问题或需要进一步的细节,请告诉我,我会很高兴帮助你!🚀📚