我构建了一个自定义的 Linux “recovery-cd”映像,它包含一个压缩的initrd和通过bcdedit(如 Ubuntu Wubi)启动而不是物理 CD 的映像。它有各种用于分区编辑、防病毒等的恢复工具。
现在我必须升级内核和模块以使其支持UEFI,因此它可以在启用 SecureBoot 的机器中启动(我使用签名的 grubx64.efi 进行启动)。
我的镜像基于 TinyCore Linux 3.x,它在最新的 5.x 版本中添加了 UEFI 支持(linux 3.10)。我用 3.10 替换了 2.6.32 内核和模块,并且一切正常。但是 TinyCore 3.x 有 glibc 2.11,而 5.x 有 glibc 2.17。
我的问题是,我如何确保新内核和旧用户应用程序/库之间没有不兼容。我正在寻找 2.6.32 和 3.10 之间的所有内核发行说明中删除的系统调用和功能,但更彻底的方法是什么?我这样做是在自找麻烦吗?