文档章节

Linux新内核:提升系统性能

linuxprobe
 linuxprobe
发布于 2016/10/19 23:02
字数 1657
阅读 76
收藏 1

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

你通常无法充分利用这些刚发布的新内核DD你得等到你的发行版推出随带新内核的新版本。我们之前介绍了定期更新内核的好处,你不必等到新版本发布才能享用。我们将演示怎么做。

免责声明: 我们的一些文章之前也提到过,更新内核确实存在破坏系统的风险(不过很小)。如果发生这种情况,通常很容易在系统引导时选择一个可正常运行的旧内核,但有时那里总是出问题。因此,我们对系统受到的任何破坏概不负责DD请谨慎行事!

准备工作

Linux新内核:提升系统性能Linux新内核:提升系统性能

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

uname -a

然后检查一下输出的是x86_64还是i686。如果是x86_64,表明你运行的是64位版本,否则你运行的是32位版本。要记住这个,因为它很重要。

Linux新内核:提升系统性能Linux新内核:提升系统性能

接下来,访问Linux内核官方网站。这会告诉你内核的目前稳定版本是多少。如果你喜欢,可以试一试发行候选版,但它不如稳定版那样经过全面测试。除非你确信自己需要发行候选版,否则就用稳定内核。

一、Ubuntu 指导

Ubuntu和Ubuntu衍生版的用户很容易更新内核,这要感谢Ubuntu主线内核PPA。虽然它的官方名称叫PPA,但是无法像使用其他 PPA那样将它添加到软件来源列表中,指望它自动为你升级内核。实际上,它就是个网页,你可以浏览并下载想要的内核。

Linux新内核:提升系统性能Linux新内核:提升系统性能

现在,访问内核PPA网页,一直滚动到底部。列表最下面可能含有一些发行候选版版本(你可以在名称中看到“rc”字样),但是它们的正上方应该是最新的稳定版。点击它,你会看到几个选项。你需要下载3个文件,并保存到各自的文件夹中(如果你喜欢的话,可以放在Downloads文件夹中),那样它们与其他文件隔离开来:

  • • 针对你架构的“generic”头文件(我这里是64位,即“amd64”)
  • • 当中文件名末尾有“all”的头文件
  • • 针对你架构的“generic”内核文件(再说一次,我会用“amd64”,但你如果使用32位,就需要“i686”)

你会注意到:还有“lowlatency”(低延迟)文件可以下载,但最好忽略它们。这类文件相对不稳定,只为通用文件不能满足像音频录制这类任务、需要低延迟优点的那些人准备的。再说一次,建议首选通用版;只有性能对某些任务来说不够好,才试用lowlatency。不,游戏和上网浏览不是使用lowlatency的借口。

Linux新内核:提升系统性能Linux新内核:提升系统性能

你已把这些放在各自的文件夹下,对么?现在打开终端,使用cd命令进入到刚创建的文件夹,比如

cd /home/user/Downloads/Kernel

然后运行:

sudo dpkg -i *.deb

这个命令会将文件夹中的所有.deb文件标为“有待安装”,然后执行安装。这是安装这些文件的推荐方法,因为不然选择有待安装的一个文件后,它很容易报告依赖项问题。这种方法可避免这个问题。如果你不清楚cd和sudo是什么,可以大致了解一下基本的Linux命令。

一旦安装完毕,重启系统,你应该就在运行刚安装的内核了!你可以在终端中运行uname -a来检查输出。

二、Fedora指导

如果你使用Fedora或其衍生版,整个过程与Ubuntu非常类似。只是下载不同文件的位置不同,安装命令也不同。

Linux新内核:提升系统性能Linux新内核:提升系统性能

查看为Fedora构建的最新内核列表。从列表中选择最新的稳定版,然后向下翻到i686或x86_64版本,这取决于你系统的架构。在这个部分,你需要下载下列文件,并保存到各自的文件夹下(比如Downloads文件夹下的“Kernel”):

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

如果你的系统是i686(32位),又有4GB或更多的内存,就需要下载所有这些文件的PAE版本。PAE是用于32位系统的地址扩展技术,让系统可以使用超过3GB的内存。

现在使用cd命令进入该文件夹,比如:

cd /home/user/Downloads/Kernel

然后运行下面这个命令来安装所有文件:

yum --nogpgcheck localinstall *.rpm

最后,重启计算机,这时你应该运行新内核了!

三、使用 Rawhide

另外,Fedora用户还可以只要切换到Rawhide,它就会自动更新最新版的每个软件包,包括内核。然而,Rawhide 经常出问题(尤其是在开发周期的早期),不应该用在你不可或缺的系统上。

四、Arch 指导

Arch用户应该总是拥有最新、最好的稳定内核(或者很接近的版本)。如果你想要更接近最新发布的稳定内核,可以启用测试软件库,它让你可以提前二三周享用主要的新版本。

要这么做,只要用你常用的终端文本编辑器,以sudo权限打开位于/etc/pacman.conf的文件,然后取消注释与测试有关的三行(删除每一行前面的#号)。如果你启用了multilib软件库,就为 multilib-testing软件库执行同样的操作,如果你需要了解更多信息,请参阅 Arch Linux维基界面。

升级内核并非易事(有意升级),但是它会给你带来诸多好处。只要你的新内核没有破坏任何方面,就可以享用更高的性能、更好的效率、支持更多硬件和潜在的新功能。如果你在运行比较新的硬件,更是如此,升级内核确实大有帮助。

免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:http://www.linuxprobe.com/

本文转载自:http://www.linuxprobe.com/up-linux-performance.html

linuxprobe
粉丝 24
博文 257
码字总数 45072
作品 0
朝阳
私信 提问
kubernetes1.4新特性(一):支持sysctl命令

sysctl是一个允许改变正在运行中的Linux系统内核参数的接口。可以通过sysctl修改Linux系统内核中的TCP/IP 堆栈和虚拟内存系统的高级选项,而且不需要重新启动Linux系统,就可以实现优化Linux...

Linux就该这么学
04/10
3
0
【深圳、北京】国内大型互联网公司急聘linux内核测试工程师

国内大型互联网公司招聘 Linux内核测试工程师,工作地点:北京、深圳,年薪在20-35W左右,有兴趣欢迎咨询:QQ:12530691,谢谢! Linux内核测试工程师 岗位职责: 建立Linux内核测试框架,建...

kezhq
2012/02/28
1K
14
Linux 2.6.36 带来了什么?

Linux 2.6.36带来了什么? 最新的Linux内核很值得注意,因为它没有带来体积的增长,却包含了成百上千个进展,将会对通常都察觉不到Linux内核升级所带来的改变的最终用户带来显著的体验提升。...

xyxzfj
2010/10/22
2.6K
3
高性能 Linux 内核 - LinuxDNA

开源项目 LinuxDNA 旨在针对 Intel 的 C/C++ 编译器(简称“ICC”)提供一个兼容的 Linux 内核源。据 Linux Journal 的报道称,LinuxDNA 项目在本月初使用 ICC 成功的编译了 Linux Kernel 2...

匿名
2009/02/28
6.3K
0
运行新版内核的 Linux 系统受“熔断”漏洞补丁的影响不大

据说 Linux Kernel 4.15 比 Linux Kernel 4.11 快 7-9% 著名的 Linux 内核维护者 Greg Kroah-Hartman 分享了关于 Meltdown 和 Spectre 漏洞补丁对 Linux 内核性能影响的一些有趣的细节。 在...

局长
2018/02/01
1K
9

没有更多内容

加载失败,请刷新页面

加载更多

web前端入门到实战:图解原生dialog标签(非常详细)

在html5中,新增了很多语义化的标签。如footer、header之类的,今天的主角是dialog标签 顾名思义,就是用来定义对话框的。目前只有Chrome和Safari支持该标签,所以用的不多,不过确实挺好用的...

梦想编程
26分钟前
4
0
一些php常用函数积累

本文链接<?php// id: ecffe70d3af54df9bad97b61918ace7d global $ct_path, $ct_log_path;$log_path = "test_php.txt";// 是否先log到buffer,再通过CT_flush()一次性写入文件$......

一字见心
27分钟前
4
0
IntelliJ idea中 注释代码折叠

visual studio中有#region 可以折叠代码,IntelliJ idea 中也有类似功能 //region 描述代码//endregion

format
27分钟前
5
0
oracle表中更改主键

一、数据表有主键但无主键约束名 先删除之前的主键,后添加主键 ,执行SQL: a. alter table 表名 drop primary key; b. alter table 表名 add primary key(想要更改的字段名称); 二、数据表...

_Somuns
29分钟前
4
0
jQuery AJAX提交表单

我有一个名称为orderproductForm的表单,输入的数量不确定。 我想做某种jQuery.get或ajax或类似的事情,它将通过Ajax调用页面,并发送所有形式为orderproductForm的输入。 我想一种方法是做类...

技术盛宴
34分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部