Cron Backup

💾 定时备份·版本追踪·自动清理

基于 cron 的自动化备份方案,支持版本触发、定时调度与智能清理,适合配置文件、代码库与用户数据的持续保护。

收藏
16.4k
安装
3.5k
版本
0.3.2
CLS 安全性认证2026-06-03
点击查看完整报告 >

使用说明

核心功能

cron-backup 是一套面向 Linux/macOS 环境的自动化备份脚本集合,通过 cron 定时任务实现目录或文件的周期性备份、版本变更检测与过期清理。其核心能力包括:

1. 定时备份:基于标准 cron 表达式执行,支持每日、每小时或自定义频率
2. 版本感知:监控版本文件或命令输出,仅在软件更新时触发备份,避免冗余

3. 智能清理:按保留天数或最小数量自动删除旧备份,防止磁盘耗尽

4. 标准化命名{name}_YYYYMMDD_HHMMSS.tar.gz 格式便于识别与恢复

显著优点

  • 零依赖:纯 Bash 脚本实现,无需额外运行时
  • 开箱即用:提供 setup-cron.sh 一键配置定时任务
  • 灵活策略:时间/数量双维度清理策略,兼顾安全与空间效率
  • 权限保留:tar.gz 格式完整保留文件权限与目录结构

潜在局限

  • 单点存储:仅支持本地或挂载目录,无内置远程同步(需配合 rsync/s3)
  • 无加密机制:备份文件以明文 tar.gz 存储,敏感数据需额外处理
  • 恢复依赖手动:仅提供 list-backups.sh 列出文件,无一键还原脚本
  • Linux 专属:依赖 cron 与 Bash,Windows 需 WSL 或替代方案

适用人群

  • 个人开发者保护本地配置与项目代码
  • 运维人员管理服务器应用数据
  • 追求轻量、可控备份方案的技术用户

常规风险

  • 定时任务冲突:高频备份叠加 cleanup 可能造成 I/O 压力,建议分散时段
  • 权限配置不当:cron 以特定用户运行,需确保对源目录的读取权限
  • 磁盘监控缺失:脚本不检查剩余空间,极端情况下仍可能写满磁盘

安全解读

核心功能

cron-backup 是一套基于 Bash 的本地自动化备份解决方案,提供四大核心能力:

  • 定时备份调度:通过 setup-cron.sh 集成系统 crontab,支持自定义 cron 表达式(如 0 2 * * * 每日凌晨 2 点执行)
  • 版本感知备份backup-versioned.sh 监控应用版本文件或命令输出,仅在版本变更时触发备份,避免冗余存储
  • 智能清理策略cleanup.sh 支持按天数保留(默认 7 天)和最小保留数量双重保护,防止磁盘耗尽
  • 标准归档格式:生成 {name}_YYYYMMDD_HHMMSS.tar.gz 时间戳命名压缩包,保留完整权限结构

显著优点

安全纯净:纯 Bash 实现,零外部依赖,无网络通信,代码 472 行共 7 个文件,攻击面极小。安全认证评分 70 分(A 级),动态行为分析、依赖审计、网络分析、威胁情报四项均获通过。

功能聚焦:专注于本地目录备份场景,自动排除 node_modules.git 等临时文件,支持配置目录、代码仓库、用户数据等多种数据源。

灵活可控:支持即时单次备份、周期性调度、版本触发三种模式,清理策略可组合时间与数量维度。

潜在局限

权限风险:脚本涉及 rm -f 删除操作和 crontab 系统配置修改,若输入路径未经验证,存在误删或配置污染风险。eval 执行版本命令虽功能必需,但属于动态代码执行。

功能边界:无远程存储能力(如云备份、异地容灾),无备份完整性校验(如校验和生成),无加密机制,适用于单节点数据保护而非企业级灾备。

维护状态:来源可信度 T3(本地项目/个人开发者),维护者为个人账号,无明确开源许可证,长期维护存在不确定性。

适合人群

  • 个人开发者需要自动化本地工作区备份
  • 小型服务器管理员保护配置文件和应用数据
  • 需要版本感知备份的 OpenClaw 等应用用户
  • 追求极简依赖、可审计代码的技术用户

常规风险

| 风险项 | 等级 | 说明 |
|--------|------|------|
| 动态代码执行 | 中 | `backup-versioned.sh` 使用 `eval` 执行版本命令,输入需可信 |
| 文件误删除 | 低 | `cleanup.sh` 的 `rm -f` 无回收站机制,建议先用 `--dry-run` 验证 |
| crontab 污染 | 低 | 重复安装可能产生冗余任务,建议定期 `crontab -l` 审查 |
| 路径遍历 | 低 | 未对输入路径做规范化校验,避免传入 `../../../etc` 等恶意路径 |

使用建议:在关键环境部署前进行二次代码审查;优先使用绝对路径;为 cleanup 配置独立的 --dry-run 测试流程;定期验证备份文件可恢复性。

Cron Backup 内容

scripts文件夹
手动下载zip · 6.1 kB
backup-versioned.shtext/x-shellscript
请选择文件