UBUNTU切換內核


查詢可更換內核的序號

    gedit /boot/grub/grub.cfg

查詢已安裝的內核和內核的序號。找到文件中的menuentry (圖中在一大堆fi-else底下)

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。記住它,下一步要用。

(3)修改grub更換內核

    sudo gedit /etc/default/grub

打開grub的編輯窗,如圖所示:


如果沒有使用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后面的空格也是必須的,萬萬不可少,也不可多!

(4)更新內核和重啟

    sudo update-grub
    sudo reboot

重啟完可以用uname -a查詢內核已更換。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM