用 rsync 做服务器增量备份:从本地同步到异地容灾
服务器数据最怕的不是硬盘坏,而是没有可用的备份。rsync 是 Linux 自带的增量同步工具,只传变化的部分,第一次全量、之后每次都很快,配上定时任务就是一套够用的备份方案。
一、先搞清一次同步
本地目录同步到备份目录:
rsync -av --delete 源目录/ 目标目录/
-a 保留权限、时间戳和目录结构,-v 输出过程;源目录末尾的斜杠很关键:带斜杠表示同步目录里的内容,不带斜杠表示连目录本身一起同步,写错会多套一层目录。--delete 会删除目标端多余的文件,让两边完全一致,第一次用建议先加 -n 演练一遍,确认无误再去掉 -n 真跑。
二、走 SSH 做异地备份
rsync -avz -e ssh 源目录/ user@备份机IP:/备份目录/
-z 开启压缩,跨网络传输省流量;配合密钥登录可以免密执行,千万别在命令里写密码。第一次同步数据量大,建议先在内网或闲时跑,之后每天增量就很轻。
三、用 --link-dest 做多版本快照
每次备份生成一个以日期命名的目录,用 --link-dest 指向上一次备份目录,未变化的文件以硬链接复用,只占一份空间,变化的文件才存新副本。这样每天一个完整快照、磁盘占用却接近增量,既能回滚到任意一天,又不会把磁盘撑爆。配合 find 定期删除 30 天前的旧快照,空间就可控。
四、定时与验证
用 crontab 每天凌晨跑一次,例如:
0 2 * * * rsync -a --delete /data/ /backup/data/
输出重定向到日志文件备查。备份做完不等于备份可用,每月至少抽查一次:随机挑几个文件从备份里恢复出来、打开确认内容无误,再检查一次备份日志里有没有报错。只备份、不验证的备份,关键时刻大概率掉链子。
小结
rsync 的核心就三点:增量省时间、硬链接快照省空间、定时加验证才算闭环。先把一条能跑的命令跑通,再谈异地、加密和多版本,别一上来就搭复杂方案。
- 点赞
- 收藏
- 关注作者
评论(0)