CentOS 7.0 升级Linux内核3.9及以上版本

之前一直使用CentOS 7系统进行开发,CentOS 7.0 系统自带的Linux内核版本为 linx 3.10,最近开发需要使用到socket的reuse port特性,该特性在Linux 3.9及以上才被支持,因此需要将系统升级到Linux的3.9及以上版本。

从网上查找了升级内核的教程,发现主要有两种:

一、使用 elrepo 的rpm包升级

查看当前系统内核版本 uname -r

1. 导入key

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

2. 安装 elrepo 的yum源

rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

3. 安装内核

在yum的elrepo源中,有最新版本内核。直接yum安装即可。

yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y

5. 设置系统启动顺序

查看系统启动项:

cat /boot/grub2/grub.cfg |grep menuentry

可以发现有最新版本的内核,此时可以设置最新版本内核为默认启动:

grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'

此时,查看默认启动的系统版本grub2-editenv list:

显示为'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'

6. reboot,重启之后再次查看 uname -r

二、使用源码编译安装升级

1 下载内核源码

下载网址为 https://www.kernel.org/

wget xxx

2 解压并进入源码目录

3 更新系统并安装依赖软件

#yum update

#yum upgrade

#yum groups install Development Tools

#yum install ncurses-devel qt-devel hmaccalc zlib-devel binutils-devel elfutils-libelf-devel

4 将当前内核配置文件拷贝到当前目录

本来是应该执行make menuconfig来自定义内核配置的,生成配置文件.config; 但是可以直接使用原来系统的内核配置,也就是拷贝/boot目录下的配置文件到当前目录。

cp /boot/config-2.6.32-431.11.2.el6.x86_64 .config

5 使用当前内核的配置

#sh -c 'yes "" | make oldconfig' #centos 6

#sh -c 'y "" | make oldconfig' #centos 7

6 编译安装

#make bzImage

#make modules

#make modules_install

#make install

7 设置系统启动顺序

查看系统启动项:

cat /boot/grub2/grub.cfg |grep menuentry

可以发现有最新版本的内核,此时可以设置最新版本内核为默认启动:

grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'

此时,查看默认启动的系统版本grub2-editenv list:

显示为'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'

8 reboot,重启之后再次查看 uname -r

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值