原标题:Linux内核5.9的最重要功能及安装方法

Linux内核5.9带来了吸引数据中心管理员的诸多性能提升。本文作者着重介绍了改进之处,并介绍了如何安装主线内核。

与5.8一样,Linux内核5.9确实没有任何改变游戏规则的功能,至少对普通用户而言没有。然而如果您是铁杆的IT专业人员,可能有几项心仪的功能会吸引您将5.9内核安装到数据中心服务器中(稍后详细介绍)。

不妨看一下最新Linux内核的一些比较重要的功能。

Linux内核5.9:大幅提升性能

重大新闻是Linux内核5.9为AMD架构和英特尔架构带来了性能提升。基于英特尔的系统将通过FSGSBASE支持获得性能提升,该版本终于有了完整支持功能。FSGSBASE指令是随英特尔Ivy Bridge CPU推出的,可在上下文切换任务繁重的情况下提升性能。该新指令还可以使用户空间无需与内核联系即可编写GSBASE。添加FSGSBASE会使Linux内核在基准测试和实际使用方面都有大幅改进。

如果您的数据中心有ARM/ARM64设备,您不会被抛弃。Linux内核5.9通过优化的调度程序利用率信息Schedutil,为该特定架构带来了性能提升。这项新增功能类似英特尔P状态推送。

ARM/ARM64架构还获得了新的sysfs切换功能(可控制CPU能源效率优化)以及许多CPUfreq修复程序。

Linux内核5.9:存储和文件系统的改进

考虑到Fedora 33正迁移到Btrfs,新内核似乎很合适。Linux内核5.9使Btrfs获得了性能上的诸多改进。为SSD设备增添加大支持NVMe 2.0的力度后,服务器上的文件系统性能也会大大提升。Btrfs的一项重要提升是添加了新的救援挂载选项,该选项将所有的现有挂载选项组合在一起,确保更可靠的恢复。

并非只有Btrfs获得补丁、调整和各种优化。XFS、ext4和F2FS在最新的Linux内核中备受关注。

Linux内核5.9:其他改进和添加

还有其他许多Linux数据中心管理员会觉得很重要的改进和添加。主要包括如下:

更好的匿名内存管理;

新的slab内存控制器,这有望减少总的内核内存使用量;

支持ZSTD压缩的内核、ramdisk和initramfs,将缩短启动时间;

USB 4规范获得更多的支持;

支持IBM POWER10处理器方面做了初步工作;

针对所有模块上的竞态条件和内存泄漏的修正版。

如何安装Linux内核5.9?

在介绍如何安装最新的Linux内核之前,我知道您可能不会这么做。为什么?因为支持数据中心的Linux发行版(比如Ubuntu、RHEL、SLED和CentOS)并没有将种种优化添加在该版本中。因此,虽然您可能获得性能提升及其他新功能,但可能会错过坚持使用发行版默认设置而获得的功能。

您可能有充分的理由升级到这个最新的Linux内核,或者您可能只想在非生产系统上对其进行测试。不管怎样,安装最新的Linux内核不那么困难(至少在某些发行版上是这样)。

我会逐步介绍在Ubuntu Server和CentOS 8上安装Linux 5.9(主线)内核的过程。

如何在Ubuntu Server上安装Linux内核5.9(20.04)?

登录到服务器,使用以下命令下载必要的.deb文件:

cd /tmp

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.9/amd64/linux-headers-5.9.0-050900_5.9.0-050900.202010112230_all.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.9/amd64/linux-headers-5.9.0-050900-generic_5.9.0-050900.202010112230_amd64.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.9/amd64/linux-image-unsigned-5.9.0-050900-generic_5.9.0-050900.202010112230_amd64.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.9/amd64/linux-modules-5.9.0-050900-generic_5.9.0-050900.202010112230_amd64.deb

一旦所有文件下载完毕,用该命令安装它们:

sudo dpkg -i *.deb

安装完成后重启,应该就可以了。重新登录到系统,执行命令:

uname -r

您应该会看到Ubuntu服务器现在运行内核5.9。

如何在CentOS 8上安装Linux内核5.9?

现在不妨在CentOS 8上执行同样的操作。登录到该服务器,先使用以下命令安装必要代码库的GPG密钥:

cat /etc/redhat-release

uname -srv

sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

使用该命令安装代码库:

sudo dnf install https://www.elrepo.org/elrepo-release-8.0-2.el8.elrepo.noarch.rpm

使用该命令安装主线(5.9)内核:

sudo dnf --enablerepo=elrepo-kernel install kernel-ml

重启CentOS系统。一旦您重新登录进去,执行命令:

uname -r

您应该会看到Linux 5.9内核已列出。

恭喜!您已在Ubuntu Server和CentOS 8上都成功安装了5.9 Linux内核。在测试机器或虚拟机上执行这番操作,看看这个最新内核的性能提升是否名副其实。返回搜狐,查看更多

责任编辑:

linux内核安装教程,Linux内核5.9的最重要功能及安装方法相关推荐

  1. seafile服务器版能安装在虚拟机上,seafile安装教程linux

    seafile安装教程linux [2021-02-15 06:48:59]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(&quo ...

  2. linux5.9安装教程,Linux内核5.9的最重要功能及安装方法

    原标题:Linux内核5.9的最重要功能及安装方法 Linux内核5.9带来了吸引数据中心管理员的诸多性能提升.本文作者着重介绍了改进之处,并介绍了如何安装主线内核. 与5.8一样,Linux内核5. ...

  3. python3.6.2安装教程-Linux下升级安装Python-3.6.2版本

    本文主要介绍在Linux(CentOS)下将Python的版本升级为3.6.2的方法 众所周知,在2020年python官方将不再支持2.7版本的python,所以使用3.x版本的python是必要的 ...

  4. linux最小系统 安装教程,Linux 学习笔记 1 使用最小的系统,从分区安装系统开始,...

    Linux 学习笔记 1 使用最小的系统,从分区安装系统开始, 我们常用的linux系统在安装过程中大多都省略了对系统进行分区的操作,以至于后期,不了解什么是分区以及分区当中最基本的一些概念, 我们不 ...

  5. Linux redis安装教程,Linux 下redis5.0.0安装教程详解

    Linux redis5.0.0安装,教程如下所示: 1.从官网下载,然后传到服务器,tar -zxvf解压 2.进入redis ? 3.安装:make, (1)若提示:: gcc: Command ...

  6. python3.6.1安装教程-Linux下python3.6.1环境配置教程

    linux系统环境自带python2.6,但有时我们项目使用的版本可能是3.x以上等等,此时我们需要在linux中再安装项目所需的python版本,此时就涉及多版本共存问题了,很多同学在安装多个版本P ...

  7. linux lanmp 安装教程,linux服务器一键安装包lanmp系列教程之一

    在我们安装了linux服务器WEB环境一键安装包lanmp后,可能会有不少疑问还有就是使用过程中出现的问题,下面为大家总结几点比较常见的,如若还有其他疑问,可到wdlinux论坛寻找相关教程. 1.如 ...

  8. cms安装教程Linux,DoraCMS安装教程(linux)

    最近在熟悉linux环境,也基本上把DoraCMS部署上去了,本教程基于ubuntu server 14.0.4,其它linux版本部署方式基本上差不多,下面详细说明一下: 1.进入server环境下 ...

  9. debian 9.4 安装教程 linux系统debian9.4图文详细安装步骤

    这篇文章主要为大家介绍了 linux系统debian9.4图文安装教程,需要的朋友可以参考下 我们这里选择install安装,不装桌面,因为是做服务器,装桌面没意义. 我们这里选择装英文版,你也可以装 ...

最新文章

  1. 【Visual C++】游戏开发笔记十三 游戏输入消息处理(二) 鼠标消息处理
  2. 软件工程——理论、方法与实践③
  3. sencha touch中实现页面之间的互相跳转
  4. OpenKruise v0.10.0 新特性 WorkloadSpread 解读
  5. nginx代理转发_学了三年的性能调优,你还不懂Nginx?怎么跳槽涨薪
  6. uniapp 强制刷新DOM/强制更新指令:this.$forceUpdate();
  7. Shiro和SpringBoot简单集成
  8. php自定义能过滤器,过滤器与自定义过滤器的介绍
  9. c语言mfc弹出窗口函数,CMFCDesktopAlertWnd实现桌面弹出消息框
  10. Struts文件上传与下载详解_文件的下载
  11. 1.5 编程基础之循环控制(45题)
  12. python脚本自动运行失败_Linux中定时任务执行python脚本失败的解决方法
  13. 在Windows下删除Linux系统的方法
  14. 网购组装电脑整机为什么便宜?
  15. javascript函数执行前期变量环境初始化过程
  16. 依赖倒置原则_面向对象的设计原则你不要了解一下么?
  17. 为AspxGridView绑定嵌套数据
  18. SQL Server 2019 Developer/Express 版本下载
  19. 关于我对网赚的思路,赚钱的方法透露
  20. 业务员怎么网上找客户?4个快速有效方法在这里

热门文章

  1. css flexbox模型_Flexbox-Ultimate CSS Flex速查表(带有动画图!)
  2. node.js编写网页_为Node.js编写可扩展架构
  3. 使用Express和MongoDB构建CRUD应用程序-第2部分
  4. 尚学堂java 参考答案 第九章
  5. python自制有声小说
  6. LeetCode 题 - 9 回文数
  7. ReportViewer教程(9)-给报表增加页打印日期编号
  8. NLP《语言模型(二)-- 神经网络NNLM语言模型》
  9. 深度学习 《LSTM和GRU模型》
  10. leetcode —— 46. 全排列(递归+回溯)