目前的 Linux 内核的开发速度是前所未有的,大概每2到3个月就会有一个主要的版本发布。每个发布都带来几个的新的功能和改进,可以让很多人的处理体验更快、更有效率、或者其它的方面更好。

问题是,你不能在这些内核发布的时候就用它们,你要等到你的发行版带来新内核的发布。我们先前讲到定期更新内核的好处,所以你不必等到那时。让我们来告诉你该怎么做。

免责声明: 我们先前的一些文章已经提到过,升级内核有(很小)的风险可能会破坏你系统。如果发生这种情况,通常可以通过使用旧内核来使系统保持工作,但是有时还是不行。因此我们对系统的任何损坏都不负责,你得自己承担风险!

预备工作

要更新你的内核,你首先要确定你使用的是32位还是64位的系统。打开终端并运行:

  1. uname -a

检查一下输出的是 x86_64 还是 i686。如果是 x86_64,你就运行64位的版本,否则就运行32位的版本。千万记住这个,这很重要。

接下来,访问官方的 Linux 内核网站,它会告诉你目前稳定内核的版本。愿意的话,你可以尝试下发布预选版(RC),但是这比稳定版少了很多测试。除非你确定想要需要发布预选版,否则就用稳定内核。

Ubuntu 指导

对 Ubuntu 及其衍生版的用户而言升级内核非常简单,这要感谢 Ubuntu 主线内核 PPA。虽然,官方把它叫做 PPA,但是你不能像其他 PPA 一样将它添加到你软件源列表中,并指望它自动升级你的内核。实际上,它只是一个简单的网页,你应该浏览并下载到你想要的内核。

现在,访问这个内核 PPA 网页,并滚到底部。列表的最下面会含有最新发布的预选版本(你可以在名字中看到“rc”字样),但是这上面就可以看到最新的稳定版(说的更清楚些,本文写作时最新的稳定版是4.1.2。LCTT 译注:这里虽然 4.1.2 是当时的稳定版,但是由于尚未进入 Ubuntu 发行版中,所以文件夹名称为“-unstable”)。点击文件夹名称,你会看到几个选择。你需要下载 3 个文件并保存到它们自己的文件夹中(如果你喜欢的话可以放在下载文件夹中),以便它们与其它文件相隔离:

  1. 针对架构的含“generic”(通用)的头文件(我这里是64位,即“amd64”)
  2. 放在列表中间,在文件名末尾有“all”的头文件
  3. 针对架构的含“generic”内核文件(再说一次,我会用“amd64”,但是你如果用32位的,你需要使用“i686”)

你还可以在下面看到含有“lowlatency”(低延时)的文件。但最好忽略它们。这些文件相对不稳定,并且只为那些通用文件不能满足像音频录制这类任务想要低延迟的人准备的。再说一次,首选通用版,除非你有特定的任务需求不能很好地满足。一般的游戏和网络浏览不是使用低延时版的借口。

你把它们放在各自的文件夹下,对么?现在打开终端,使用cd命令切换到新创建的文件夹下,如

  1. cd /home/user/Downloads/Kernel

接着运行:

  1. sudo dpkg -i *.deb

这个命令会标记文件夹中所有的“.deb”文件为“待安装”,接着执行安装。这是推荐的安装方法,因为不可以很简单地选择一个文件安装,它总会报出依赖问题。这这样一起安装就可以避免这个问题。如果你不清楚cdsudo是什么。快速地看一下 Linux 基本命令这篇文章。

安装完成后,重启你的系统,这时应该就会运行刚安装的内核了!你可以在命令行中使用uname -a来检查输出。

Fedora 指导

如果你使用的是 Fedora 或者它的衍生版,过程跟 Ubuntu 很类似。不同的是文件获取的位置不同,安装的命令也不同。

查看 最新 Fedora 内核构建列表。选取列表中最新的稳定版并翻页到下面选择 i686 或者 x86_64 版。这取决于你的系统架构。这时你需要下载下面这些文件并保存到它们对应的目录下(比如“Kernel”到下载目录下):

  • kernel
  • kernel-core
  • kernel-headers
  • kernel-modules
  • kernel-modules-extra
  • kernel-tools
  • perf 和 python-perf (可选)

如果你的系统是 i686(32位)同时你有 4GB 或者更大的内存,你需要下载所有这些文件的 PAE 版本。PAE 是用于32位系统上的地址扩展技术,它允许你使用超过 3GB 的内存。

现在使用cd命令进入文件夹,像这样

  1. cd /home/user/Downloads/Kernel

接着运行下面的命令来安装所有的文件

  1. yum --nogpgcheck localinstall *.rpm

最后重启你的系统,这样你就可以运行新的内核了!

使用 Rawhide

另外一个方案是,Fedora 用户也可以切换到 Rawhide,它会自动更新所有的包到最新版本,包括内核。然而,Rawhide 经常会破坏系统(尤其是在早期的开发阶段中),它不应该在你日常使用的系统中用。

Arch 指导

Arch 用户应该总是使用的是最新和最棒的稳定版(或者相当接近的版本)。如果你想要更接近最新发布的稳定版,你可以启用测试库提前2到3周获取到主要的更新。

要这么做,用你喜欢的编辑器以sudo权限打开下面的文件

  1. /etc/pacman.conf

接着取消注释带有 testing 的三行(删除行前面的#号)。如果你启用了 multilib 仓库,就把 multilib-testing 也做相同的事情。如果想要了解更多参考这个 Arch 的 wiki 界面。

升级内核并不简单(有意这么做的),但是这会给你带来很多好处。只要你的新内核不会破坏任何东西,你可以享受它带来的性能提升,更好的效率,更多的硬件支持和潜在的新特性。尤其是你正在使用相对较新的硬件时,升级内核可以帮助到你。

怎么升级内核这篇文章帮助到你了么?你认为你所喜欢的发行版对内核的发布策略应该是怎样的?。在评论栏让我们知道!

本文来自云栖社区合作伙伴“Linux中国”,原文发布日期:2015-08-15

如何更新 Linux 内核来提升系统性能相关推荐

  1. linux更新系统内核,如何更新Linux内核来提升系统性能?

    Linux内核的开发速度是前所未有的,大概每二三个月就会有一个新的主要版本发布.每次发布都带来了几项新的功能和改进,许多人可以充分利用它们,让计算体验更快.更高效或者有其他方面的提升. 可问题是,你通 ...

  2. linux内核5.8.1,Linus Torvalds宣布大规模更新Linux内核5.8

    原标题:Linus Torvalds宣布大规模更新Linux内核5.8 Linus Torvalds已使用第一个发行候选版本正式开始了Linux内核5.8的开发,最能形容这个新版本的单词是" ...

  3. 解决Ubuntu自动更新Linux内核导致显卡驱动无法加载,致使循环在登录界面

    解决Ubuntu自动更新Linux内核导致显卡驱动无法加载,致使循环在登录界面 关闭unattended-upgrade 在/etc/apt/apt.conf.d目录下,查找包含Unattended- ...

  4. linux内核主频,Linux 内核时钟频率对系统性能影响

    以下是阅读LKD对内核定时器(时钟)频率的阐述之后作的简要总结: 1. 内核定时器频率在下定义,不同体系结构可以定义不同的频率,单位为HZ: 2. 以x86体系为例,默认的内核定时器频率为100HZ, ...

  5. deepin更新linux内核,修改deepin启动内核

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 晚上修改了deepin的启动项. 虽然还不知道为什么amd64版本就可以使用,但是先照一个帖子修改了启动项.我觉得没问题 ...

  6. [CVE-2022-0847][Dirty Pipe]Linux内核权限提升漏洞

    一.漏洞背景 漏洞原理与脏牛漏洞(CVE-2016-5195)类似,攻击者通过利用此漏洞,可覆盖重写任意可读文件中的数据,从而将普通权限的用户提升至root权限. 二.影响版本 Linux kerne ...

  7. 更新linux内核方法

    背景:买了块网件的A6210无线网卡,用的是mt7612u芯片,插到deepin下不能识别,ubuntu 18.04下同样不能识别,查过内核版本号,用的都是4.15的内核,去Github查了Linux ...

  8. ubuntu 更新linux内核,在Ubuntu中,如何更新Linux内核

    前提条件运行Ubuntu Linux的服务器 访问终端(CTRL-ALT-T或应用程序菜单>附件>终端) 用户帐户,有sudo权限 apt工具,内置于Ubuntu, 内置于Ubuntu中的 ...

  9. meltdown linux 内核,内核开发者称应更新Linux内核应对 Meltdown 和 Spectre漏洞

    著名的Linux内核开发者Greg Kroah-Hartman发表了一篇关于Linux内核中Meltdown和Spectre补丁状态的深度文章. 正如你所知道的,上周出现了两个严重的硬件缺陷,成为计算 ...

最新文章

  1. Docker 1.7.0 深度解析
  2. c语言结构体讲解,C语言基础之结构体讲解
  3. IIS 7.5 配置伪静态方法
  4. Python操作Json、Csv、Excel文件
  5. python打包zip文件_python 解压文件,合并文件 打包成zip格式文件 生成MD5值
  6. java基础知识1---面向对象及final,finally,finalize区别
  7. SpringBoot 2.x 监控中心:Admin
  8. Spark _07_补充部分算子【二】
  9. nginx之worker进程个数
  10. 燕十八MySQL优化学习笔记
  11. 使用dialog插件弹出提示和确定信息对话框8-8
  12. 两台笔记本无线共享上网
  13. 删除2345网页导航
  14. 小鱼儿的菜鸟笔记三 原来Excel图表可以这么做——花样制作Excel条形图/柱状图/环形图/折线图
  15. 2022P气瓶充装判断题及在线模拟考试
  16. 【深度学习Deep Learning】资料大全
  17. CUDA实例系列一: 矩阵乘法优化
  18. 微软官方安装U盘启动盘制作方法教程
  19. HDU 6082 度度熊与邪恶大魔王 (完全背包)
  20. ajax 提交 blob,使用jQuery的Ajax方法作为BLOB检索图像

热门文章

  1. Linux下进程隐藏的常见手法及侦测手段
  2. #20175201张驰 实验三 敏捷开发与XP实践
  3. 查看linux中tcp连接数
  4. 在Ubuntu Server上使用vtk处理体数据,直接得到渲染结果图片避免显示窗口
  5. [上架] iOS 上架更新版本号建议
  6. Visio中如何绘制黑白图像
  7. 浏览器对象模型(BOM)
  8. Java回调函数使用
  9. js动态添加options(转载)
  10. FreeModbus ASCII传输