Grub 禁用恢復在檢測到的作業系統上不起作用
我有一台帶有三個 Linux 安裝的三重引導的筆記型電腦:Kali Linux 2.0 和兩次 Debian 8.2(一個用於遊戲,一個用於開發)。我想禁用恢復選項,所以我
#GRUB_DISABLE_RECOVERY="true"
在/etc/default/grub
.這成功地從 Kali Linux(執行 update-grub 的系統)中刪除了恢復選項。但是,這並沒有禁用兩個 Debian 安裝的恢復選項。如何在不手動編輯的情況下禁用兩個 Debian 安裝的恢復選項
/boot/grub/grub.cfg
?取消註釋前的結果
cat /boot/grub/grub.cfg | grep 'recovery'
:menuentry 'Kali GNU/Linux, with Linux 4.0.0-kali1-amd64 (recovery mode)' --class kali --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.0.0-kali1-amd64-recovery-1a2ddb7f-7fc3-40b5-b226-ed5cf940205e' { menuentry 'Debian GNU/Linux, with Linux 3.16.0-4-amd64 (recovery mode) (on /dev/mapper/ROOT--VG-DEBIAN--DEV)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-3.16.0-4-amd64-root=/dev/mapper/ROOT--VG-DEBIAN--DEV ro single-60442acd-d36a-4d7d-90c8-515281fe68d8' { menuentry 'Debian GNU/Linux, with Linux 3.16.0-4-amd64 (recovery mode) (on /dev/mapper/ROOT--VG-GAME--ROOT)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-3.16.0-4-amd64-root=/dev/mapper/ROOT--VG-GAME--ROOT ro single-1b27071e-4fcb-41c2-b9c8-01bccf90a10c' {
之後:
menuentry 'Debian GNU/Linux, with Linux 3.16.0-4-amd64 (recovery mode) (on /dev/mapper/ROOT--VG-DEBIAN--DEV)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-3.16.0-4-amd64-root=/dev/mapper/ROOT--VG-DEBIAN--DEV ro single-60442acd-d36a-4d7d-90c8-515281fe68d8' { menuentry 'Debian GNU/Linux, with Linux 3.16.0-4-amd64 (recovery mode) (on /dev/mapper/ROOT--VG-GAME--ROOT)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-3.16.0-4-amd64-root=/dev/mapper/ROOT--VG-GAME--ROOT ro single-1b27071e-4fcb-41c2-b9c8-01bccf90a10c' {
如果重要的話,這是我的磁碟佈局:
/dev/sda1 掛載到 /boot
/dev/sda2 擴展分區
/dev/sda5 帶有 ROOT-VG 卷組的 lvm 卷
/dev/ROOT-VG/GAME-ROOT
- ext4 分區安裝到/在遊戲機
/dev/ROOT-VG/DEBIAN-DEV
- ext4 分區安裝到/在開發機器
/dev/sda6 勒克斯加密卷
- ext4 分區掛載到/在 Kali Linux 中
Grub 版本:2.02~beta2-22+deb8u1
在研究了 grub os-prober 腳本的工作原理後,我發現它
linux-boot-prober
負責檢測 Linux 作業系統上的選項。linux-boot-prober
查看 來/boot/grub/grub.cfg
確定選項。要禁用恢復,您必須 chroot 進入作業系統,編輯/etc/default/grub
文件以禁用恢復選項,然後執行update-grub
. 不過要小心,這可能會更新您的 grub 配置。為防止這種情況,install-grub /dev/sda && update-grub && install-grub /dev/sda
請在退出 chroot 後執行。