grub 儲存的預設值在仿生中不起作用

grub 儲存的預設值在仿生中不起作用

我有一個雙重引導 Debianstretch/Ubuntubionic。領先的引導管理器是 Debian。

在仿生中更新核心後,我啟動仿生引導程式來測試新核心。 Bionic 中還有一個主線核心安裝。

但我會將普通的 Ubuntu 核心設定為預設值。

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
GRUB_GFXPAYLOAD_LINUX=text

sudo grub-editenv list

saved_entry=gnulinux-advanced-0ddc8e0a-4b8a-479c-9502-5478ed3c4036>gnulinux-4.15.0-51-generic-advanced-0ddc8e0a-4b8a-479c-9502-5478ed3c4036
next_entry=

但在重新啟動或關機+開機後,Ubuntu 會啟動主線核心。我的菜單項目是grep -i "menuentry '" /boot/grub/grub.cfg|sed -r "s|--class .*$||g"|nl -v 0

 0  menuentry 'Ubuntu' 
 1      menuentry 'Ubuntu, mit Linux 4.20.17-042017-generic' 
 2      menuentry 'Ubuntu, mit Linux 4.20.17-042017-generic (recovery mode)' 
 3      menuentry 'Ubuntu, mit Linux 4.15.0-51-generic' 
 4      menuentry 'Ubuntu, mit Linux 4.15.0-51-generic (recovery mode)' 
 5      menuentry 'Ubuntu, mit Linux 4.15.0-50-generic' 
 6      menuentry 'Ubuntu, mit Linux 4.15.0-50-generic (recovery mode)' 
 7  menuentry 'Ubuntu text' 
 8      menuentry 'Ubuntu text, mit Linux 4.20.17-042017-generic' 
 9      menuentry 'Ubuntu text, mit Linux 4.15.0-51-generic' 
10      menuentry 'Ubuntu text, mit Linux 4.15.0-50-generic' 

我的配置有什麼問題嗎?

筆記:我確實跑步sudo update-grub

答案1

你的問題聽起來像這樣:GRUB 2 “卡在”特定的開機選項上

答案中的解決方案:

在這種情況下,next_entry 欄位在重新啟動後並沒有像它應該的那樣被清除(可能是由於某些 btrfs 不相容?)

我成功地像這樣取消了它(同樣,在 chroot 中):

grub2-editenv /boot/grub2/grubenv unset next_entry

重啟後grub選單恢復正常!

相關內容