美文网首页
ubuntu更换linux内核

ubuntu更换linux内核

作者: 卡拉肖克_潘 | 来源:发表于2020-01-31 09:18 被阅读0次

    step1:查看现在的内核版本

    uname -sr
    

    step2:到以下链接:<u>https://kernel.ubuntu.com/~kernel-ppa/mainline/</u>
    下载需要版本的linux内核。红色箭头所指的文件。

    image.png

    step3:到下载目录下(最好新建一个文件夹存放这3个文件),安装所有的deb

    sudo dpkg -i *.deb
    

    step4:查看已安装的内核版本

    sudo dpkg --get-selections | grep linux
    

    step5切换内核

    参考[2]中的后半部分
    1.查询可更换内核的序号

    gedit /boot/grub/grub.cfg
    

    查询已安装的内核和内核的序号。找到文件中的menuentry (图中在一大堆fi-else底下)


    image.png

    仔细观察图中,menuentry底下还有submenu,submenu底下就包含了 带有缩进的 menuentry。以下是计数规则:
    第一个menuentry 的序号是0,第二个submenu的序号是1,以此类推
    在submenu中,第一个menuentry的序号是0,第二个是1,以此类推
    我摘录图中submenu中的第一个menuentry如下:

    menuentry 'Ubuntu,Linux 4.15.0-34-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-34-generic-advanced-261d46dc-b223-49ee-a561-439009b15519' {
            recordfail
            load_video
            gfxmode $linux_gfx_mode
            insmod gzio
            if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
            insmod part_gpt
            insmod ext2
            set root='hd0,gpt2'
            if [ x$feature_platform_search_hint = xy ]; then
              search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2  261d46dc-b223-49ee-a561-439009b15519
            else
              search --no-floppy --fs-uuid --set=root 261d46dc-b223-49ee-a561-439009b15519
            fi
            echo    '载入 Linux 4.15.0-34-generic ...'
                linux   /boot/vmlinuz-4.15.0-34-generic root=UUID=261d46dc-b223-49ee-a561-439009b15519 ro  quiet splash $vt_handoff
            echo    '载入初始化内存盘...'
            initrd  /boot/initrd.img-4.15.0-34-generic
    

    意思是,这个menuentry就是内核 Linux 4.15.0-34-generic 的序号菜单了。这里就假设我需要把内核更换为它。它在submenu 的第一个menuentry。记住它,下一步要用。

    2.修改grub更换内核

    sudo gedit /etc/default/grub
    

    打开grub的编辑窗,如图所示:

    image.png

    如果没有使用grub修改过内核,除注释第一行应该显示的是

    GRUB_DEFAULT=0
    

    0就是默认的kernel了。我们要做的就是把GRUB_DEFAULT=0 改成

    GRUB_DEFAULT=“1 >0”
    

    即可。请注意在(2)中提到的需要更换的内核Linux 4.15.0-34-generic在 submenu 的第一个menuentry,因此是“1 >0“。如果它在submenu的第5个,那么就是 ”1 >4“,唯一需要的就是数好这个!

    同时,请注意一对英文分号""和1后面的空格也是必须的,万万不可少,也不可多!

    3.更新内核和重启

    sudo update-grub
    sudo reboot
    

    重启完可以用uname -a查询内核已更换。

    setp other:卸载命令

    sudo apt purge linux-headers-4.10.0-28 linux-image-4.10.0-28-generic
    

    参考:
    [1]<u>https://www.cnblogs.com/hezhiyao/p/8327339.html</u>
    [2]<u>https://blog.csdn.net/qq_42030961/article/details/82740315</u>

    相关文章

      网友评论

          本文标题:ubuntu更换linux内核

          本文链接:https://www.haomeiwen.com/subject/rxxgthtx.html