返回 Skill 列表
extension
分类: 效率与办公无需 API Key

Config Rollback

自动回滚保护:配置文件更改前备份,设定5分钟系统计时器,出错时自动恢复。支持任意服务配置,...

person作者: 2233adminhubclawhub

Config Rollback — 改配置再也不怕炸

Story

凌晨两点,你改了一行 nginx 配置,reload,网站挂了。SSH 连不上——因为你也改了 sshd_config。

你盯着黑屏,后悔没备份。

这个 skill 就是你的后悔药。

改配置前,它先备份,然后设一个 5 分钟的系统级定时炸弹。如果 5 分钟内你没说"没问题"——它自动把配置还原,重启服务。就算你把 SSH 搞断了,定时任务照样跑,因为它用的是 at 命令,不依赖你的连接。

How It Works

You: "自动回滚"

Agent:
1. cp config → config.bak
2. echo "restore" | at now + 5 minutes  (system-level, survives disconnect)
3. Returns job ID

You: [make changes, test]

Happy? → atrm <job-id>     (cancel the bomb)
Broken? → wait 5 min       (auto-restores)

Usage

Say "auto rollback" or "自动回滚" before editing any config:

# Backup + set 5-min restore timer
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
echo "cp /etc/nginx/nginx.conf.bak /etc/nginx/nginx.conf && systemctl reload nginx" | at now + 5 minutes

# Make your changes...
vim /etc/nginx/nginx.conf
systemctl reload nginx

# If everything works, cancel the timer:
atrm <job-id>

When to use

  • Editing nginx, sshd, firewall, or any service config
  • Changing API gateway routing rules
  • Updating DNS or proxy settings
  • Any change that could lock you out of a remote server

Key Principle

The restore timer is a system-level scheduled task (at / crontab). It does NOT depend on your shell session, SSH connection, or any application. Even if you brick the service, the timer still fires.