我运行无头家庭服务器,有时需要进行配置更改,这可能会破坏远程访问。是否有一个工具或系统服务可以设置为定义什么构成“良好”状态(例如可以 ping 1.1.1.1 并且某些远程主机可以看到我),并在检测到“不良”状态时自动回滚更改?我看见一个答案这提供了一个非常有针对性的建议,但我正在寻找一些更通用的东西,我可以一直运行。
在一个完美的世界里,它看起来就像是时间倒流了。但我不想运行虚拟机,因此我将满足于检测并自动恢复我在/etc
.让服务自动回滚所有更改并重新启动系统甚至是有价值的,/etc
除非我在更改后五分钟内特别指出新状态良好。
有没有任何软件包或服务可以做到这一点?
答案1
时移可以用来实现你的目标。在无头 Debian 服务器中,Timeshift 提供了一个 CLI 工具。
安装:
sudo apt install timeshift
联机帮助页中的基本 cli 选项:
List:
--list[-snapshots] List snapshots
Backup:
--create Create snapshot (even if not scheduled)
Restore:
--restore Restore snapshot
--clone Clone current system
Delete:
--delete Delete snapshot
Examples:
timeshift --create --comments "after update" --tags D
timeshift --restore --snapshot '2014-10-12_16-29-08' --target /dev/sda1
timeshift --delete --snapshot '2014-10-12_16-29-08'
答案2
您描述了各种概念:
版本控制
这是一个可以让您恢复源代码或配置的工具。
自动部署
自动部署添加到修订控制的配置。
自动化测试
代码或配置在部署之前或之后进行测试。如果之前完成,则通过可以触发部署。如果之后完成,则失败可能会触发回滚。