![通过软件包更新定期维护 Debian 服务器](https://linux22.com/image/648195/%E9%80%9A%E8%BF%87%E8%BD%AF%E4%BB%B6%E5%8C%85%E6%9B%B4%E6%96%B0%E5%AE%9A%E6%9C%9F%E7%BB%B4%E6%8A%A4%20Debian%20%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我们托管多个网站,这些网站使用不同的内容管理系统,版本也不同。一个 esxi 上运行着多个 Debian 服务器。我想每个月引入一个类似 Windows 的补丁日,我们会在补丁日升级服务器上的软件包。我很好奇其他管理员是如何计划这样的补丁日的。到目前为止,我已经计划好了:
- 能力更新 && 能力升级 --simulate -V查看哪些软件包需要升级以及是否有任何重大升级。
- 制作服务器快照
- 升级软件包
- 检查服务器日志并获取一些网站样本
如果一切顺利,则在 3 天后删除快照。如果有任何错误,请恢复快照并深入研究问题。我知道这个概念很粗略。你的补丁程序怎么样?我担心升级可能会破坏某些依赖关系。但是对于许多网站来说,手动检查每个网站的特定依赖关系是不够的。我想到某种半自动单元测试,以检查每个补丁日之后依赖关系是否仍然完好无损。有人有一个流行词可以让我开始搜索吗?
我们使用 Icinga 监控所有服务器,包括监控 CPU 负载、HDD 空间等。此外,我们还有一个运行良好的备份系统。
提前致谢
答案1
有apt-btrfs-快照在 Ubuntu 中,如果根文件系统是 btrfs,则提供 (IIRC) APT 挂钩等功能。但它不在 Debian 中,IIRC,因为它还不够可靠。
网络上也有关于如何使用 LVM(在 VM 内部)执行此操作的说明,例如AskUbuntu 上的这个答案。
如果你需要特定日期的软件包或 APT 存储库,例如因为你在测试系统上尝试了更新,它在那里运行良好,但是有新的更新可用,你不想立即部署(或者比你测试的版本更新),你可能需要查看Debian 快照存档。