用“触发器”把备份从“按时跑”升级为“按需跑”,只在数据发生变化时执行,从而减少无效全量、缩短备份窗口、降低资源占用。
| 触发器类型 | 典型工具 | 最佳场景 | 关键优点 | 注意点 |
|---|---|---|---|---|
| 时间触发 | Cron、systemd Timers | 常规兜底、全量/合成备份 | 简单可靠、易维护;systemd 支持秒级与持久化 | 固定频率可能做“无效备份”;cron 不保证精准到秒 |
| 事件触发 | inotify + inotifywait | 目录/文件变更即时备份 | 只在变化时执行,减少冗余 | 需防抖与错误重试;大量小文件需限流 |
| 状态触发 | systemd 路径/服务依赖 | 网络就绪后备份、设备挂载后备份 | 与系统状态联动,流程编排友好 | 依赖关系需正确建模,避免误触发 |
| 说明:Cron 适合“每天/每小时”的兜底;systemd Timers 提供更高精度与Persistent=true的错过后补执行;inotify 适合“写时备份/近实时备份”。 |
方案A 近实时事件触发(inotify + rsync)
方案B 定时 + 增量兜底(cron/ systemd Timers + rsync)
方案C 数据库备份的触发与保留