与本问题中涉及的一些主题类似,内核更新后重新启动 Linux 重要吗?,我很好奇是否有一种方法可以在不重启的情况下将内核更新应用于系统。我知道有一家供应商叫拼接提供此类功能。但是,我很好奇是否有办法在没有商业产品的情况下执行相同的任务,或者是否有 Ksplice 的替代方案,因为自从被 Oracle 收购以来,某些功能集似乎已经发生了变化。理想情况下,如果有脚本或方法可以添加一些文件在 CentOS、Red Hat 和/或 Ubuntu 上执行此操作,那就太好了。
答案1
KSplice 是一段新代码,目前还没有为 Linux 编写过类似代码。虽然有人可以(并且很有可能)分叉旧的开源代码并继续开发,但目前还没有发行版中的替代软件可用于对正在运行的 Linux 内核进行热修补。
答案2
kexec 是一种快速重启的好方法。虽然这不是“实时升级内核”,但它可以做一些有趣的事情,例如绕过 BIOS、POST 和 BootLoader...
通过 Ubuntu‘RapidReboot’主题可以找到一些额外的信息:https://wiki.ubuntu.com/RapidReboot
答案3
(披露:我在 Canonical 工作)
因为您特别询问了 Ubuntu,Canonical 现在在 16.04 上提供此服务。
- http://blog.dustinkirkland.com/2016/10/canonical-livepatch.html
- https://www.ubuntu.com/server/livepatch
它使用了自 4.0 发布以来上游 Linux 内核中的实时修补技术。