ubuntu_22.04_amd64编译安装kernel_6.5

457 阅读1分钟
  1. 下载kernel源码: 推荐使用清华源:我这里下载的6.5版本

    wget https://mirrors.tuna.tsinghua.edu.cn/kernel/v6.x/linux-6.5.tar.xz
    tar -xJvf linux-6.5.tar.xz # 解压
    
  2. 安装包和依赖:

    sudo apt update
    sudo apt install build-essential libncurses-dev bison flex libssl-dev libelf-dev
    
  3. 配置内核编译选项:

    cd linux-6.5 # 进入内核源代码目录
    make menuconfig # 我什么都没改 默认save
    

    make menuconfig 命令会打开一个文本界面的配置界面,您可以在其中配置各种内核编译选项。完成配置后,保存并退出界面。

  4. 进行编译: 在内核源代码目录中执行以下命令来开始编译内核:

    make -j$(n_pro) # 我服务器的cpu是i9-9900X 使用了8个线程编译用时大概20分钟
    

    -j$(n_pro) 表示使用多个线程进行编译,加快编译速度。这里的 $(nproc) 将使用可用的处理器核心数。

  5. 安装编译好的内核: 编译完成后,安装编译好的内核:

    sudo make modules_install
    sudo make install
    

    安装内核模块和内核映像文件。

  6. 重启: 在安装完新内核后,重启系统F2 or DEL进入bios 选择 advanced ubuntu options 既可以查看刚才所编译的6.5版本的kernel。

  • error1 :

    No rule to make target ‘debian/canonical-certs.pem‘, needed by ‘certs/x509_certificate_list‘
    

    参考解决方案blog.csdn.net/qq_36393978…

  • error2 在这里插入图片描述 这里似乎没什么影响

  • warning1在这里插入图片描述

  • warning2 在这里插入图片描述

  • warning3 在这里插入图片描述

  • warning4 在这里插入图片描述

  • warning5 在这里插入图片描述

编译安装过程中难免出到各种各样的错误,遇到问题Google解决即可,后面我会尝试不同的架构,如arm等,以及不同的Linux系统,如centos等 编译不同版本的kernel,其次,貌似还有一个叫做交叉编译,后续再跟新