📜  rsync 备份 (1)

📅  最后修改于: 2023-12-03 15:19:51.647000             🧑  作者: Mango

Rsync 备份

介绍

rsync 是一种可在本地和远程文件之间同步和备份的工具。它通过使用快速增量文件传输算法,仅传输两个文件之间的差异,从而最大限度地减少数据传输量。rsync 支持备份文件、文件夹和远程系统,是许多系统管理员和开发人员常用的选择。

主要特性
  • 增量备份:rsync 根据源文件和目标文件的内容差异进行同步,仅传输差异部分,以提高传输效率。
  • 压缩传输:通过使用压缩算法(如 zlib),rsync 可以在传输时对数据进行压缩,减少传输的数据量。
  • 支持远程备份:rsync 可以与远程系统进行通信,实现跨网络的备份和同步。
  • 保留权限和时间戳:rsync 在备份过程中保留文件的权限和时间戳等元数据。
  • 支持部分备份恢复:rsync 可以选择性地恢复备份文件的部分内容。
安装

rsync 可用于多个平台,包括 Linux、macOS 和 Windows(通过 Cygwin 或 Windows Subsystem for Linux)。以下是在 Linux 上使用包管理器进行安装的示例:

## Ubuntu/Debian
sudo apt-get install rsync

## CentOS/Fedora
sudo yum install rsync

## macOS (通过 Homebrew)
brew install rsync
使用示例
备份本地文件/文件夹

要备份本地文件/文件夹,可以使用以下命令:

rsync -av /path/to/source /path/to/destination

这将将 /path/to/source 中的内容同步到 /path/to/destination

备份本地文件/文件夹到远程系统

要将本地文件/文件夹备份到远程系统,可以使用以下命令:

rsync -av /path/to/source user@remote:/path/to/destination

其中,user 是远程系统的用户名,remote 是远程系统的主机名或 IP 地址。

同步远程文件/文件夹到本地

要将远程系统的文件/文件夹同步到本地,可以使用以下命令:

rsync -av user@remote:/path/to/source /path/to/destination
查看备份进度

要查看备份的实时进度,请使用 --progress 参数:

rsync -av --progress /path/to/source /path/to/destination
过滤文件和文件夹

可以使用 --exclude 参数来排除某些文件或文件夹的备份:

rsync -av --exclude='*.txt' /path/to/source /path/to/destination

上述示例将排除所有扩展名为 .txt 的文件。

额外资源
结论

rsync 是一种强大的备份和同步工具,它以其高效的增量备份和强大的功能而被广泛使用。无论是在本地还是跨网络的备份需求,rsync 都是程序员的首选之一。