rsync 命令介绍和使用案例
rsync
命令是一个强大的文件同步和传输工具,广泛用于 Linux 和 Unix 系统。它能够高效地同步文件和目录,支持增量备份,且可以通过网络进行远程文件传输。
基本介绍
- 全称:
rsync
的全称是 "remote synchronize",意为远程同步。 - 主要功能:
- 文件拷贝:可以在本地和远程系统之间高效地复制文件。
- 增量备份:首次执行时进行全量备份,后续只备份修改过的文件。
- 支持压缩和加密:可以通过 SSH 进行安全传输,并在传输过程中压缩数据以减少带宽使用。
基本语法
rsync [options] [source] [destination]
常用选项
选项 | 描述 |
---|---|
-a | 归档模式,递归复制并保持所有文件属性(等同于 -rlptgoD )。 |
-r | 递归复制目录及其内容。 |
-v | 显示详细的输出信息。 |
-z | 在传输过程中压缩数据。 |
-P | 显示进度并保留部分传输的文件。 |
--delete | 删除目标中源目录中没有的文件。 |
-e | 指定使用的远程 shell(如 SSH)。 |
--progress | 显示详细的传输进度。 |
命令参数
使用案例
1. 本地文件拷贝
将一个文件从当前目录复制到目标目录:
rsync -av source.txt /path/to/target/
2. 复制目录
将整个目录复制到目标位置:
rsync -av /path/to/source_directory/ /path/to/target_directory/
注意:源目录后面的 /
表示只复制其中的内容,而不包括目录本身。
3. 增量备份
使用 rsync
进行增量备份,将 /home/user/documents/
备份到外部硬盘:
rsync -av --delete /home/user/documents/ /media/external_drive/backup/
这里的 --delete
参数会删除目标目录中那些源目录中没有的文件,以确保目标目录与源目录完全一致。