核心功能
sys-updater 是一款面向 Ubuntu 生产环境的保守型系统维护自动化工具,采用 OpenClaw 技能框架实现。其核心设计理念将安全补丁与功能升级严格分离,通过多阶段工作流降低更新风险。
APT 包管理:每日自动执行 apt-get update 刷新索引,调用 unattended-upgrade 应用安全更新,非安全更新需经过 2 天观察期。所有 APT 操作均通过 -s 模拟模式预演,确保可审计性。
NPM/PNPM/Brew 生态:检测过时包并纳入隔离状态跟踪,T+2 日自动执行网络检索分析 bugs/regressions/CVE 信号,T+3 日仅应用通过审查的更新。OpenClaw 技能本身支持自动即时更新。
报告机制:每日 09:00 MSK 向 Telegram 推送结构化报告,包含各包管理器健康状态、候选/计划/拦截清单,以及关键字段——"实际已安装"明细,确保运维人员掌握精确变更。
显著优点
- 零信任更新流程:非安全更新强制冷却期,结合自动化风险评估
- 最小权限原则:sudoers 仅授权 3 个特定 apt 命令,杜绝完整 root 访问
- 完备审计能力:JSON 状态文件 + 10 天轮转日志,支持变更追溯
- 多生态覆盖:统一编排系统级 (apt)、用户级 (brew) 与开发依赖 (npm) 更新
潜在局限
- Ubuntu 独占:设计深度绑定 apt/unattended-upgrade,不兼容 Debian 衍生版或其他发行版
- 时区固定:报告时间硬编码 MSK(莫斯科时区),需手动调整 crontab 适配其他区域
- 审查依赖外部搜索:T+2 日风险评估依赖网络检索质量,可能产生误报或漏判
- Telegram 报告单点:未内建邮件/Slack 等备用通知渠道
适合人群
- 运行 Ubuntu Server 的 DevOps/SRE 团队
- 需要合规审计日志的中小型生产环境
- 追求"安全优先、变更可控"运维哲学的组织
常规风险
| 风险类型 | 说明 | 缓释措施 |
|---------|------|---------|
| 配置漂移 | 多 cron 任务需手动部署 | 提供完整 crontab 模板与验证脚本 |
| sudoers 误配 | 权限过宽或语法错误导致安全敞口 | 强制 `visudo -c` 验证,文档明确禁止通配符 |
| 网络检索失效 | 审查阶段搜索 API 变动 | 状态机设计允许人工介入覆盖 |
| 状态文件损坏 | JSON 解析失败中断流程 | 建议配置监控告警于 `state/` 目录完整性 |