Canonical Livepatch 正式拥抱 Arm64:ARM 服务器终于也能零停机打内核补丁了
如果你手里跑着 Oracle Cloud 的免费 Arm 实例,或者自建了基于 Ampere Altra 的 ARM 服务器,有个消息应该能让你松口气——Canonical 的 Livepatch 服务现在正式支持 Arm64 平台了。这意味着,你的 ARM 架构 Ubuntu 服务器从此也能像 x86 那样,在不重启、不停机的情况下完成内核安全更新。
说实话,对于需要 7×24 小时在线的服务器来说,重启这件事一直是个让人头疼的选择题。不打补丁,系统暴露在漏洞风险里;打了补丁,服务就得中断。尤其是内核级别的安全更新,传统做法几乎绕不开一次重启。Canonical 的 Livepatch 本质上就是来解决这个死结的——它把补丁直接打到运行中的内核内存里,业务不用停,连接不会断,用户甚至感知不到背后已经做了一次安全加固。
不过在此之前,Livepatch 的覆盖范围一直局限在 amd64 架构上。从 Ubuntu Core 20 开始,x86 平台的用户就已经享受到了这项便利,而 Arm64 这边却始终缺位。随着 ARM 服务器在云计算和边缘计算场景里越来越常见,这个缺口显得越来越扎眼。毕竟,Oracle 的免费 Arm 实例、AWS 的 Graviton 系列,还有各路基于 ARM 的私有云方案,用户基数早就不是小众了。
好在 Canonical 终于把这个坑填上了。
具体来说,Arm64 平台的 Livepatch 支持从 Ubuntu Core 26 开始落地。也就是说,如果你在用 Ubuntu Core 26 或更高版本的 Arm64 系统,现在可以直接启用这项服务。另外,运行 Ubuntu 26.04 LTS 的 Arm64 设备也同样在支持范围内。还在用旧版本的朋友,或许是时候考虑升级了——毕竟新版本带来的不只是一个功能,而是整套安全运维思路的更新。
说到这儿,可能有人要问了:为什么偏偏内核更新这么特殊?普通软件包升级不都是无缝的么?
确实,日常的应用层更新大多数情况下不需要重启服务就能生效。但内核不一样——它是整个系统的地基,所有进程都跑在它上面。一旦内核代码本身需要更新,理论上必须加载一个全新的内核镜像才能生效。Livepatch 的巧妙之处在于,它并不替换整个内核,而是把有漏洞的那部分函数用补丁版本替换掉,直接在内存里完成热切换。对于高危和关键级别的内核安全漏洞,这种方式能帮你争取宝贵的时间,把真正的重启维护窗口留到业务低峰期。
更良心的是,这项服务个人用户完全可以白嫖。Canonical 把 Livepatch 打包进了 Ubuntu Pro 订阅里,而 Ubuntu Pro 对个人用户是免费的——最多覆盖五台设备。换句话说,只要你有一个 Ubuntu One 账号,去 Ubuntu Pro 页面领一个免费订阅令牌,就能在自家服务器上开启 Livepatch,一分钱不用花。
操作起来也不复杂。拿到令牌之后,在终端里跑几条命令就能搞定:
plain
sudo pro attach <你的令牌> sudo pro enable livepatch装完之后,用下面任意一条命令确认服务状态:
plain
canonical-livepatch status sudo pro status如果看到 Livepatch 的状态是 enabled,那就说明补丁通道已经打通了。后续一旦有高危内核漏洞被公开,Canonical 会推送对应的 Livepatch,你的系统会在后台静默完成修补,整个过程不需要你半夜爬起来重启机器。
当然,Livepatch 也不是万能药。它只针对关键和高危级别的内核安全问题,常规的系统更新该做还得做。而且 Canonical 官方也提醒过,机器跑太久不重启,可能会积累一些 Livepatch 无法解决的状态问题——比如内存碎片、某些驱动资源的长期占用。所以最健康的做法还是:用 Livepatch 扛住紧急漏洞的窗口期,然后定期安排维护窗口做一次完整的重启和系统更新。
总的来说,Arm64 平台获得 Livepatch 支持,对 ARM 生态的运维人员来说是个实打实的好消息。以前只有 x86 能享受的零停机内核补丁,现在 ARM 服务器也能用上了。再加上 Ubuntu Pro 个人版的免费额度,小团队和个人开发者几乎没有任何门槛就能部署这套方案。如果你正好有 Arm64 的 Ubuntu 服务器在跑,不妨花十分钟把它开起来——毕竟,谁也不想因为一次内核漏洞而在凌晨三点被报警电话叫醒,对吧?
