ubuntu18.04替换启动内核

为了验证程序是否支持x86_64平台上某Linux kernel版本,需要调整某些内核配置型,并更换为这一内核版本,于是在ubuntu中编译并安装了这一内核。
本文在 ubuntu 18.04 版本下完成。

  1. 下载 Linux 内核源码,并进入内核源码目录
  2. 安装编译时需要使用的工具,按照编译时给出的编译提示,灵活安装所需的工具链
sudo apt-get update
sudo apt-get install libncurses5-dev build-essential kernel-package openssl-dev
  1. 拷贝原系统中的配置文件做为编译内核源码使用的默认配置
cp -v /boot/config-$(uname -r) .config
make localmodconfig
  1. 按照自己需求配置待编译内核
make menuconfig
  1. 编译内核源码,需要注意的是,内核编译产物较多,将会占用十几甚至数十GB的存储空间,编译前使用 df 命令查看当前系统中剩余可用的存储空间,保证其足以完成内核编译任务
make -j4
  1. 安装编译产物
sudo make modules_install
sudo make install
  1. 更新 grub 令其知道当前系统中有哪些内核可用
sudo update-grub
  1. 查看更新过的 grub 信息,是否有新增加的内核项
cat /boot/grub/grub.cfg | grep menuentry
  1. 修改 grub 配置文件 /etc/default/grub 中的 GRUB_DEFAULT 项,如
GRUB_DEFAULT="Ubuntu, with Linux 4.15.19"
  1. 更新 grub 信息
sudo update-grub
  1. 按照上一条命令执行给出的提示再次修改 grub 配置文件,如
GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 4.15.19"
  1. 再次更新 grub 配置信息
sudo update-grub
  1. 重启系统,将会从指定内核启动
sudo reboot
  1. 启动后使用如下命令查看内核版本以及内核编译日期
uname -a

我的博客
参考博客1
参考博客2

posted @ 2024-03-10 13:55  ArvinDu  阅读(16)  评论(0编辑  收藏  举报