如何在 Ubuntu 服务器上启用实时修补
厌倦了每次安全升级后都重新启动 Ubuntu 服务器?您可以启用实时内核修补并完全忘记重新启动。
管理 Linux 服务器可能会让人感觉像是一件苦差事,特别是如果您必须执行重复的任务。
更新服务器就是其中一项任务。虽然您可以选择在服务器上自动安装安全更新,但这并不能让您完全摆脱维护任务。
为什么?因为内核的安全更新需要重新启动Ubuntu服务器。
如果您在 Linode 等云服务之一上使用 Ubuntu 服务器,您会注意到它会通知您系统需要重新启动。
*** 需要重新启动系统 ***
如果我告诉您有一种方法可以安装所有更新(包括内核更新)而无需重新启动服务器,该怎么办?这称为实时内核修补或实时修补。
什么是实时修补?
实时修补是在不重新启动系统的情况下将安全修复程序应用到正在运行的 Linux 内核的过程。
这个过程相当复杂且有风险,这就是为什么它在 Linux 发行版中默认不可用的原因。
早期的 Linux 系统管理员必须做大量的手动工作才能对内核进行热补丁。从 4.0 版本开始,Linux 内核本身就添加了实时修补支持。这意味着您的 Ubuntu 系统应该支持实时修补。
但是,您始终可以在 Ubuntu 中使用以下命令来确保它受支持:
cat /boot/config-$(uname -r) | grep LIVEPATCH
如果您看到 Y
,则表示您的内核支持实时修补。
现在让我们考虑实时内核修补。您将需要实时修补服务。有一些工具可以对 Linux 内核进行实时修补。就像 Oracle 的 ksplice 或 SUSE 的 kGraft 以及 Ubuntu 的 Livepatch。
请记住,实时修补是由 KernelCare 等公司作为服务出售的。 Ubuntu 允许每个 Ubuntu 帐户免费使用最多 3 个服务器(稍后解释)。
由于这里讨论的是Ubuntu,所以最好使用Ubuntu本身的实时补丁服务。
在 Ubuntu 服务器上启用实时修补
转至 Canonical Livepatch Service 网页。
如果您还没有 Ubuntu One 帐户,则必须创建一个帐户。
登录后,您可以看到您帐户的令牌以及一些必须在要激活实时修补的服务器上使用的命令。
获得此令牌后,登录您的 Ubuntu 服务器。
首先安装实时补丁工具:
sudo snap install canonical-livepatch
接下来,使用您从 Ubuntu One 帐户复制的令牌启用实时内核修补。
sudo canonical-livepatch enable ad108xxxxxxxxxxxxxxxxxxxxxxxxx
就是这样。现在您已经启用了实时修补,您无需担心重新启动服务器。想象一下您的服务器的正常运行时间。
说到正常运行时间,让我分享一下系统管理员赞歌 Uptime Funk。这是来自 SUSE Linux 的非常有趣的模仿视频。
不要重新启动它,只需修补:)