首页 » LANMP » Linux » 正文

以包管理器的方式更新Linux内核

CentOS 更新Linux内核

1、导入public key

2、安装ELRepo

为RHEL-7,SL-7或CentOS-7安装ELRepo:

为RHEL-6,SL-6或CentOS-6安装ELRepo:

3、升级Kernel

这里需要注意的是,在 ELRepo 中有两个内核选项,一个是 kernel-lt(长期支持版本),一个是 kernel-ml(主线最新版本),采用长期支持版本(kernel-lt),更稳定一些

安装 kernel-lt(lt=long-term)

或者安装kernel-ml //这里可以装到最新的版本

4、安装完成,需要修改grub

编辑grub.conf文件,修改Grub引导顺序

CentOS 6

根据安装好以后的内核位置,修改 default 的值,一般是修改为0,因为 default 从 0 开始,一般新安装的内核在第一个位置,所以设置default=0

CentOS 7

1. #自动创建GRUB内核配置开机选单

2. #查看可选的GRUB内核配置开机选单

#/etc/grub2.cfg文件是一个文件链接,实际链接到/boot/grub2/grub.cfg

#/etc/default/grub文件可以编辑,保存了GRUB通用的变量设置。查看编辑/etc/default/grub文件,确保GRUB_DEFAULT=saved

这之后有三种做法,一种是用命令的方式设置开机选单,一种是直接编辑配置文件。

方法一:

1) 查看CentOS 7 系统中有哪些启动项

每一个启动项都是以menuentry开头,menuentry后面单引号内的字符就是启动项的名称。

2) 查看当前CentOS 7的默认系统启动项

3) 修改CentOS 7 启动项

4) 再次查看当前CentOS 7的默认系统启动项

方法二:

#执行 设置内核配置开机选单为第0项(第一个),执行 确认设置成功(saved_entry=0)

方法三:

所有操作都执行完毕以后,重启主机,重启后执行 ,查看内核版本号

Ubuntu 更新Linux内核

  • OS:Ubuntu 16.04.3 LTS
  • 当前内核版本

我这里以Ubuntu 16.04.3 LTS来做演示

1.根据你的架构下载.deb文件

要在Ubuntu中升级内核,请到 http://kernel.ubuntu.com/~kernel-ppa/mainline/ 选择适合你系统架构的版本下载。(编写本文时 mainline stable 版本为 4.19.4)

先创建文件夹

将下载的.deb包放入文件夹

对于 64 位系统:

对于 32 位系统:

2.安装

3.查看内核版本号

所有操作都执行完毕以后,重启主机,重启后执行 ,查看内核版本号

开启拥塞控制算法(BBR)

BBR是Google 开源的TCP拥塞控制算法,在部署了最新版内核并开启了TCP BBR的机器上,网速甚至可以提升好几个数量级,在丢包率较高的网络中该算法的效果更佳。想要了解BBR算法的原理,可以看下来自Google的TCP BBR拥塞控制算法解析这篇文章。

Linux Kernel从4.9.x版本开始支持tcp_bbr,我们需要保证安装的系统内核版本大于4.9.x即可开启TCP BBR拥塞控制算法。

编辑/etc/sysctl.conf文件,修改内核参数,添加以下内容(如果/etc/sysctl.conf文件中存在net.ipv4.tcp_congestion_control配置,最好是先注释掉):

修改配置文件完成后:

如果操作一切顺利,那么应该可以感受速度有质的提升。

当然除了内核支持的TCP BBR算法外,我们也可以使用其他工具来实现网络加速:

锐速,工具收费,有人提供破解版
kcptun,基于kcp协议的UDP隧道,可以在openvz架构上使用,可以配合TCP BBR算法使用

参考链接:

发表评论

正在加载验证码......

请先完成验证