linux备份策略核心是“分层+自动化+验证”,需按数据类型分级处理:系统配置用rsync+tar+etckeeper,业务数据用增量rsync或inotifywait,数据库用mysqldump/pg_dump+pitr,日志通常不备;工具优选borgbackup、lvm/btrfs快照、rclone云同步及离线加密归档;所有任务cron调度并校验完整性;必须每月演练恢复,确保rpo/rto达标。

Linux备份策略的核心是“分层+自动化+验证”,不是简单拷贝文件,而是根据数据重要性、变更频率、恢复时效要求来设计组合方案。
按数据类型分级备份
系统配置、用户数据、数据库、日志等性质不同,不能用同一方式处理:
-
系统与配置文件:用
rsync + tar定期归档/etc、/boot、/home(不含大媒体文件),配合etckeeper跟踪配置变更 -
业务数据(如网站、应用目录):每日增量 rsync 到远程服务器,保留最近7天快照;关键目录启用
inotifywait触发实时同步(仅限小规模高敏数据) -
数据库(MySQL/PostgreSQL):禁止直接拷贝数据文件。MySQL 用
mysqldump --single-transaction或mydumper;PostgreSQL 用pg_dump配合 WAL 归档实现 PITR(时间点恢复) -
日志与临时数据:通常不备份,通过
logrotate管理生命周期,必要时压缩归档最近30天的/var/log
选择合适的备份方式与工具
避免“一把梭”式全盘镜像,优先选支持去重、压缩、加密、校验的成熟方案:
- 本地快照:LVM 或 Btrfs/ZFS 文件系统开启快照功能,秒级创建一致状态副本,适合临时应急回滚
-
网络备份:
borgbackup是推荐首选——内置压缩、AES-256 加密、重复数据删除、带完整性校验,支持远程仓库(SSH/S3) -
云备份:用
rclone同步加密后的备份包到对象存储(如 AWS S3、腾讯云 COS),设置生命周期策略自动清理旧版本 - 离线备份:每月将 borg 或 tar 加密归档写入外置硬盘,断电离线存放,防勒索软件和误删
制定可执行的时间与保留策略
备份频率和保留周期必须匹配业务 RPO(恢复点目标)和 RTO(恢复时间目标):
- 核心数据库:每小时生成逻辑备份 + 持续 WAL 归档 → RPO ≈ 几分钟
- 用户文档类数据:每日凌晨 2 点执行 borg 备份 → 保留最近 30 天 + 每月第一个备份永久保留
- 系统配置:每次
apt upgrade或修改/etc后自动触发一次 etckeeper commit - 所有备份任务通过
cron管理,并在脚本末尾调用borg check或sha256sum校验归档完整性
必须做备份恢复演练
90% 的备份失败发生在恢复环节——没验证过的备份等于没备份:
- 每月随机抽取一个备份集,在隔离环境(如虚拟机)中执行完整还原流程:解密 → 解包 → 导入数据库 → 启动服务 → 检查数据一致性
- 记录每次演练耗时与问题,更新文档和脚本。例如发现某次 PostgreSQL 恢复慢,就优化
pg_restore参数或调整表空间路径 - 把恢复命令和关键参数写进 README.md,放在备份仓库根目录,确保新人也能操作
不复杂但容易忽略。关键是让备份成为自动运行、定期验证、责任到人的日常动作,而不是出事才想起的补救措施。










