通常,使用当前内核配置从源代码构建最新的稳定 Linux 内核并安装它们就可以了。在 的情况下17.10 x86_64
,最新的4.x
内核可以正常工作 - 它们直接从 中获取kernel.org
。最近,我正在尝试使用较旧的内核,例如3.x
和2.x
。到目前为止,只有3.18.90
17.10 可以正常工作,但它在双显示器方面存在一些问题,这不是一个重要的问题 - 可能是 Nvidia 驱动程序与较旧/较新的内核的兼容性。但是,所有其他较旧的内核版本(如3.2.97
、2.6.39
等)均无法正常工作 - 启动卡在“ .. Loading init ramdisk...
”屏幕上。检查journalctl
特定内核启动日志的输出,除了一些X11
问题和一些systemd
服务未启动或终止外,没有发现太多信息。在浏览了几个有关此类X11
错误的网站后,我启用了内核配置中的VGA VESA framebuffer
支持console framebuffer
选项。仍然没有任何帮助。顺便说一句,在重新启动这些内核之前,我确实为每个内核重新安装了 Nvidia 驱动程序。那么,有没有最低限度每个 Ubuntu 版本都使用哪个内核版本?另外,我需要补充一点,我尝试使用旧的 ubuntu-12.04 LTS 内核配置之一来查看它是否有任何不同 - 没有任何变化,卡在“ Loading init ramdisk...
” 对此有什么想法?
答案1
那么,每个 Ubuntu 版本都有最低内核版本吗?
是也不是。
是的,因为内核可能太旧而无法运行特定的 Ubuntu 版本。内核不断添加新功能,如果 Ubuntu 版本依赖某些内核功能,则在该功能推出之前发布的任何内核都将无法运行它。
不是,或者至少可能不是,因为对于给定的 Ubuntu 版本,找到能够运行它的最早内核版本可能不太现实,因为这需要针对所有可能的用例测试每个早期内核版本。(即使内核能够启动某个 Ubuntu 版本的默认安装,它也可能无法像该版本的官方内核那样执行所有任务。)
最后,提醒一下,唯一可以保证适用于 Ubuntu 版本的内核是该版本官方存储库中的内核。您可以随意尝试较早(或较晚)的内核,但没有任何形式的保证(这就是为什么没有努力确定“最低内核版本”的原因;无论如何它都不会保证任何事情)。