我应该升级到“主线”内核吗?

更新的“主线”版本的内核可以从Ubuntu内核团队获得 ,例如3.4和3.5,而Ubuntu 12.04是3.2。

  • 什么是主线内核?
  • 它们比我现有的内核更好吗?
  • 升级到主线内核的优缺点是什么?
  • 我能轻松回去吗?

升级到主线内核通常不是一个好主意

此答案中的大多数基本信息来自Mainline Builds wiki

1.它们仅用于测试且不受支持

  • 主线内核是从最新的未修改的“主线”Linux内核源代码构建的。
  • Ubuntu内核团队提供这些用于测试和调试目的,以查看问题是否已经“上游”修复,即由Linux内核开发人员修复。
  • 因此,它们不受支持,必须由您自担风险; 您可以通过kernel-oops向kernel.org报告可能的错误,或者如果您想要更快的解决方案,请尝试发布到Linux内核邮件列表

他们经常打破司机,尤其是Nvidia / AMD和无线(Broadcom)。

  • 主线内核不包含任何Ubuntu提供的驱动程序或补丁
  • 这意味着提供用于图形,无线等的二进制驱动程序
  • 如果您尝试安装直接从制造商处下载的二进制驱动程序,则很可能它们无法工作,因为主线标题可能不兼容。
    • 对于12.04之后的非LTS版本(12.10,13.04,…)尤其如此,因为主线内核是使用最后的LTS工具链(编译器等)构建的,这通常比最新的工具链更旧。非LTS发布。

3.如果您认为可以解决当前内核遇到的严重问题,则应该只安装这些

  • 较新的内核有时会包含您可能遇到的硬件或文件系统问题的修复程序。 例如,最新的Intel Ivy Bridge CPU上的内部HD4000图形偶尔会冻结,这是一个在内核3.3.6和更新版本中修复的错误 。
  • 您可以尝试在这些情况下安装主线内核,看看它是否有助于解决您的问题。
  • 如果是这样,你应该考虑升级到最新的Ubuntu + 1内核,它可用的二进制驱动程序。

4.如果您安装了主线或其他较新的内核,您仍然可以选择在引导时选择它来使用旧的(稳定)内核:

  • 打开电脑后按住Shift键。
  • 您将看到Grub菜单,如下所示。 用户向下箭头转到“以前的Linux版本”,然后按Enter键

    在此处输入图像描述

  • 选择具有xxx-generic版本的选项,而不是具有xxx- yyyyyy -generic的选项 ,然后按Enter键 。 除非您安装了多个主线/定制内核,否则这通常是第一个选项。

    在此处输入图像描述

而不是主线,您应该考虑LTS启用堆栈

https://wiki.ubuntu.com/Kernel/LTSEnablementStack

其中,较新的内核/图形堆栈正式向后移植,仅适用于LTS Ubuntu版本。

在这种情况下,Precise 12.04.5有Trusty的内核(3.13)

如果您知道新内核如何处理硬件的具体修复或改进,我会说它。

由于缺乏支持,我不会升级到主线内核,除了我在N64游戏模拟运行非常缓慢且有很多错误时遇到了一些麻烦。 在尝试了我为仿真器和xorg找到的每个配置之后,我读到了这里为什么Radeon Graphics在Linux 3.12上更快 。 这足以激励我测试它,外观和性能的结果令人惊讶,并没有出现新的问题。

有一点需要注意的是,您是否安装了外部模块(也称为树外)(请参阅树模块中的识别以了解这些模块的位置)。 如果您需要这些模块,请考虑它们是否将针对新的内核版本进行构建。 做一些研究并在新的内核版本上自己测试它们。 更糟糕的情况是,您可以启动到以前的内核版本并卸载新版本。

建议在尝试升级到主线内核之前删除外部或专有模块 。 我确实必须删除virtualbox以避免在内核安装期间出现“错误!模块构建的错误返回状态”。

Interesting Posts