Linux文件同步/镜像—rsync

rsync 是 Linux 中最常用的文件同步工具之一,支持增量传输、断点续传、权限保持、排除规则等高级功能。它常用于代码同步、备份、部署、远程环境同步等场景。

本文总结 rsync 的常用参数、典型用法。


1. rsync 常用参数说明

✅ 基础参数

参数 含义
-v verbose,显示详细输出
-a archive 模式,递归复制并保持权限、时间戳、软链接等属性(相当于 -rlptgoD
-r 递归复制目录(已包含在 -a 中)
-P 等价于 --partial --progress:显示进度 + 支持断点续传
--delete 删除目标端中源端已不存在的文件(镜像同步)
--exclude=PATTERN 排除匹配的文件或目录
--partial 保留未完成的文件,断点续传
--progress 显示传输进度

2. rsync 常见使用模式

✅ 2.1 本地目录同步到远端

复制代码
rsync -avP local_dir/ user@host:/remote/path/

✅ 2.2 从远端同步到本地

复制代码
rsync -avP user@host:/remote/path/ local_dir/

✅ 2.3 排除文件同步

复制代码
rsync -avP --exclude='*.log' --exclude='.git' src/ dest/

✅ 2.4 镜像同步(删除目标端多余文件)

复制代码
rsync -avP --delete src/ dest/

3. rsync 使用建议

✅ 使用 -a 保持文件属性

适用于代码、配置、环境同步。

✅ 使用 -P 便于大文件传输

断点续传 + 进度显示。

✅ 使用 --exclude 减少传输量

排除 .git、日志、缓存等。

✅ 使用 --delete 时要谨慎

它会删除目标端多余文件,适用于镜像同步,不适用于备份。


4. 常用 rsync 模板(可直接复用)

✅ 同步代码(排除 git)

复制代码
rsync -avP --exclude='.git' project/ user@host:/workspace/project

✅ 同步日志目录(保留所有属性)

复制代码
rsync -avP /var/log/ user@host:/backup/log/

✅ 同步大文件(断点续传)

复制代码
rsync -avP bigfile.iso user@host:/data/

✅ 完整镜像同步(慎用)

复制代码
rsync -avP --delete src/ dest/
相关推荐
HalvmånEver5 小时前
Linux:线程同步
linux·运维·服务器·线程·同步
Zach_yuan5 小时前
自定义协议:实现网络计算器
linux·服务器·开发语言·网络
岁杪杪5 小时前
关于运维:LINUX 零基础
运维·服务器·php
wdfk_prog6 小时前
[Linux]学习笔记系列 -- [drivers][I2C]I2C
linux·笔记·学习
VekiSon6 小时前
Linux内核驱动——杂项设备驱动与内核模块编译
linux·c语言·arm开发·嵌入式硬件
tianyuanwo6 小时前
企业级NTP客户端配置指南:基于内部NTP服务器的实践
运维·服务器·ntp客户端
芷栀夏6 小时前
CANN开源实战:基于DrissionPage构建企业级网页自动化与数据采集系统
运维·人工智能·开源·自动化·cann
Y1rong6 小时前
linux之网络
linux
寄存器漫游者6 小时前
Linux 软件编程 - IO 编程
linux·运维·spring
charlotte102410246 小时前
高并发:关于在等待学校教务系统选课时的碎碎念
java·运维·网络