Linux 服务器如何在不重启的情况下更新内核

Sid*_*med 19 upgrade linux-kernel

根据我的信息,升级 linux 内核需要重新启动。重新启动家用计算机不是问题,但我认为这对服务器来说不是一回事。

那么使用 Linux 发行版的服务器是在升级内核后重新启动,还是使用某种技巧来避免启动?

ica*_*rus 17

是的,他们执行“重新启动”,但可以执行 kexec_load 系统调用来预加载新内核。

也可以修补正在运行的内核,例如redhat kpatch。我所知道的所有这样做的事情都不能改变数据结构。

当然,在上个世纪,lisp 机器曾经能够修补它们正在运行的内核。

  • 还有香草`kexec`,用于立即启动新内核。根据您对“重启”的定义,这可能属于非重启内核升级。 (2认同)

Ed *_*lle 10

内核更改应该重新启动。你可以安装内核,在某些情况下你可以插入和删除不同内核的模块,但我不建议这样做。

如果服务器是集群的一部分,则可以重新启动服务器并且服务不会受到影响。您也可以创建防火墙/路由器集群,这样就不会出现单点故障 (SPOF)。为此,您可以使用在多个系统之间共享的所谓的虚拟 IP (VIP)。

如果你想尝试这个想法,你可以使用 QEMU 或 VirtualBox 等来创建虚拟网络。

  • 实时内核补丁怎么样? (11认同)