zoukankan      html  css  js  c++  java
  • Centos源码编译升级指定内核版本

    1.查看当前内核版本:

    使用的系统版本,当前日期CentOS最新版:

    [root@localhost ~]# cat /etc/redhat-release
    CentOS Linux release 8.4.2105

    查看当前系统内核版本

    [root@localhost ~]# uname -r

    4.18.0-305.10.2.el8_4.x86_64

    2.下载最新稳定版本的内核源码包到 /usr/src/kernels ,并解压到当前目录

    [root@localhost ~]# tar -zxvf linux-5.11.tar.gz -C  /usr/src/kernels/

    3.从 /boot 目录将现有版本的内核编译config配置文件拷过来到放到新的内核源码解压目录内并重命名为.config的隐藏文件

    [root@localhost ~]#cp -v  /boot/config-4.18.0-305.3.1.el8.x86_64 /usr/src/kernels/linux-5.11/.config

    4.安装依赖包

    [root@localhost ~]#yum -y groupinstall "development tools"

    安装ncurse-devel包 (make menuconfig 文本界面窗口依赖包)

    [root@localhost ~]#yum -y install ncurses-devel

    5.运行 [root@localhost /usr/src/kernels/linux-5.11/]#make menuconfig,

    开启文本界面的编译选项菜单窗口,可以对内核加载的模块编译选项进行调整,如修改编译后的内核名称、新添加之前系统缺少的模块等。

    这里可以自定义内核特性,如果对内核不熟悉的话,直接使用tab键 选save 保存,然后退出即可。

    6.编译内核

    查看本机内核数#lscpu 或者  nproc

    这里,如果不超过4核, -j 后面接cpu核心数量;超过4核,建议使用-j 4,嗯,稳一点

     [root@localhost /usr/src/kernels/linux-5.11/]# make -j 4#根据CPU核数开启多线程编译以加快编译速度

    开始漫长的编译过程,大概需要2小时左右,具体视CPU硬件的性能决定。

    如果编译开始提示错误,则可能需要预先安装对应的组件包,例如:

    [root@localhost /usr/src/kernels/linux-5.11/] yum -y install openssh-devel elfutils-libelf-devel bc

    根据对应的错误提示,yum 方式安装对应的组件包,部分组件包在epel源,所以需要预先配置好epel源仓库。

    (常见编译出错问题,见下一篇Kernel 源码升级问题指南)

    7.编译安装模块

    编译完成后执行make modules_install 安装内核模块(一般编译的时候不出错,后面就不会出错的。)

    [root@localhost /usr/src/kernels/linux-5.11/]make modules_install

    8.[root@localhost /usr/src/kernels/linux-5.11/]make install

    如需将新版本内核设置为默认启动内核,可以使用此命令

    [root@localhost /usr/src/kernels/linux-5.11/]grub2-set-default 0 #0表示 /boot/grub2/grub.cfg 文件中排在第一位的 menuentry 段

    9.安装完后重启设备reboot

        进入系统后,再查看一下uname -r,已经是升级为指定内核版本。

  • 相关阅读:
    【2021 ECUG Con】聚势而来,与你相约花开时
    为 Nginx 添加 HTTP 基本认证(HTTP Basic Authentication)
    centos6 yum 源失效 404
    [nsis]安装包反编译
    Web安全测试学习笔记-DVWA-盲注(使用sqlmap)
    Shellcodeloader免杀过火绒
    C#创建快捷方式-转载自ConExpress
    C#运行新线程,也可打开网页
    C#判断指定文件是否存在-转载mmgx(仅为方便找一下)
    C# 文件夹创建方法
  • 原文地址:https://www.cnblogs.com/M-98k/p/15080675.html
Copyright © 2011-2022 走看看