0.前言
上一章(点击返回上一章)提到如何编译内核源码,本章主要介绍如何将编好的内核替换已有的内核。
1. 替换内核
第1步:查看当前内核版本
cat /proc/version
第2步: 查看机器上的内核信息
grep menuentry /boot/grub/grub.cfg
输出:
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
menuentry_id_option=""
export menuentry_id_option
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-7944a517-8573-49cc-897c-6a97312f2eb2' {
submenu 'Ubuntu 高级选项' $menuentry_id_option 'gnulinux-advanced-7944a517-8573-49cc-897c-6a97312f2eb2' {
menuentry 'Ubuntu,Linux 5.10.219' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.10.219-advanced-7944a517-8573-49cc-897c-6a97312f2eb2' {
menuentry 'Ubuntu, with Linux 5.10.219 (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.10.219-recovery-7944a517-8573-49cc-897c-6a97312f2eb2' {
menuentry 'Ubuntu,Linux 5.3.0-28-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.3.0-28-generic-advanced-7944a517-8573-49cc-897c-6a97312f2eb2' {
menuentry 'Ubuntu, with Linux 5.3.0-28-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.3.0-28-generic-recovery-7944a517-8573-49cc-897c-6a97312f2eb2' {
menuentry 'Memory test (memtest86+)' {
menuentry 'Memory test (memtest86+, serial console 115200)' {
可以看到Ubuntu,Linux 5.10.219就是在上一章中编好的内核
第3步:打开grub文件
sudo gedit /etc/default/grub
可以看到如下内容:
GRUB_DEFAULT=0 # 默认使用的内核
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
第4步:将GRUB_DEFAULT替换第2步中的输出信息:
GRUB_DEFAULT=Ubuntu, Linux 5.10.219
保存并退出
第5步:
更新grub配置
sudo grub-mkconfig -o /boot/grub/grub.cfg
重启机器:
reboot
第6步:
查看替换结果:
可以看到内核版本已经由原来的5.3.0替换成了现在的5.10.219