rsync实现linux增量备份的核心是比对文件大小与修改时间,-a参数保留元数据,--delete保持目标同步源,--link-dest支持硬链接快照节省空间,cron可定时自动化执行。

Linux 增量备份用 rsync 最直接——它不依赖额外服务,一条命令就能跑起来,关键在于参数选对、路径写准、定时配稳。
核心命令:增量同步靠什么生效
rsync 默认就做增量,不是靠“上次备份时间”,而是比对源和目标的文件大小与修改时间(mtime)。只要两者之一不同,就传新版本;完全一致的文件跳过,不重复复制。
- -a(归档模式)必须加:等价于 -rlptgoD,保留权限、属主、时间戳、软链接等,是备份一致性的基础
- --delete要慎用但常需:让目标严格跟随源——源里删了的,备份里也清掉;否则旧文件越积越多
- -v适合调试,生产脚本中可去掉;加 --dry-run 可先预览实际会删/传哪些文件,防误操作
- 路径末尾斜杠有语义:
/src/同步内容,/src同步目录本身;错一个字符,备份结构就乱
本地备份:每天覆盖式更新
适合单机重要目录,如文档、配置等。首次运行是全量,后续都是增量。
Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...
- 确保目标目录存在,例如:
mkdir -p /backup/documents - 执行同步:
rsync -av --delete /home/user/docs/ /backup/documents/ - 加日志便于排查:
rsync -av --delete /home/user/docs/ /backup/documents/ >> /var/log/backup.log 2>&1
多版本快照:用 --link-dest 节省空间
想保留历史版本(比如周一、周二、周三各一份),又不想占满磁盘?硬链接快照是主流做法。
- 首次备份:
rsync -a /data/ /backup/2026-06-11/ - 次日备份:
rsync -a --delete --link-dest=/backup/2026-06-11/ /data/ /backup/2026-06-12/ - 每个日期目录都完整可访问,但未变文件是硬链接,共享同一份数据块
- 注意:
--link-dest必须指向已存在的、同文件系统上的目录,否则退化为全量
定时执行:用 cron 每天凌晨自动跑
把备份变成无人值守任务,只需两步:写脚本 + 设定时。
- 创建脚本:
sudo nano /usr/local/bin/backup-docs.sh,内容为: #!/bin/bashrsync -a --delete /home/user/docs/ /backup/documents/- 赋予执行权限:
sudo chmod +x /usr/local/bin/backup-docs.sh - 编辑 root 定时任务:
sudo crontab -e,添加一行: -
0 2 * * * /usr/local/bin/backup-docs.sh(每天凌晨 2 点执行)










