文章目录
- 1. 基本用法
- 2. 常用参数
- 3. 用法举例
- 4. 注意事项
rsync 命令用于快速同步文件和目录,可用于本地和远程传输,支持增量同步、压缩、权限保留等特性。
1. 基本用法
- 语法:
rsync [选项] 源 目标
-
功能:
- 高效增量同步,只传输变更的部分,提高传输速度。
- 支持远程同步,可通过 SSH 或 RSync 协议传输文件。
- 支持压缩和带宽限制,减少网络负载。
- 保留文件权限、时间戳、符号链接,确保数据完整性。
- 支持断点续传,适合大文件传输。
-
此命令是否系统自带:通常系统自带的。若未安装,可以使用以下方法手动安装:
-
Debian/Ubuntu:
sudo apt install rsync
-
CentOS/RHEL:
sudo yum install rsync
-
Arch Linux:
sudo pacman -S rsync
-
2. 常用参数
-a
:归档模式(保留权限、时间戳、符号链接等)。-v
:显示详细信息。-z
:压缩数据,提高传输效率。-r
:递归复制,适用于目录。-p
:保留权限。-t
:保留时间戳。-l
:保留符号链接。-h
:以人类可读格式显示文件大小。--progress
:显示传输进度。--delete
:删除目标端不存在的文件,保持完全同步。-e ssh
:通过 SSH 进行远程同步。
3. 用法举例
-
本地同步目录:
rsync -av /source/ /destination/
说明:将
/source/
目录同步到/destination/
,保留权限、时间戳等。 -
远程同步目录:
rsync -avz -e ssh /local/ user@remote:/backup/
说明:使用 SSH 传输
/local/
目录到远程服务器/backup/
,启用压缩。 -
显示进度并同步文件:
rsync -av --progress /source/ /destination/
说明:同步
/source/
到/destination/
,并显示进度。 -
限制带宽同步:
rsync -avz --bwlimit=5000 /source/ user@remote:/backup/
说明:限制传输带宽为 5000KB/s(约 5MB/s)。
-
同步后删除目标端多余文件:
rsync -av --delete /source/ /destination/
说明:确保
/destination/
和/source/
完全一致,删除多余文件。 -
同步指定文件类型:
rsync -av --include="*.jpg" --exclude="*" /source/ /destination/
说明:只同步
.jpg
文件,忽略其他文件。
4. 注意事项
-
目录路径后是否有
/
影响同步方式:/source/
同步目录内的内容(不包含source
本身)。/source
同步整个目录(包含source
目录)。
-
--delete
谨慎使用,避免误删重要文件。 -
远程同步时,需确保 目标服务器支持 SSH 或 RSync 协议。
-
传输大文件时,可使用
--partial
支持断点续传。