Boot Repair создал слишком много записей меню Grub для Windows

Вы можете добавить заблокированные веб-сайты к /etc/hosts и указать их на localhost.

    127.0.0.1 firstblockedwebsite.com

    127.0.0.1 secondblockedwebsite.com

таким образом, заблокированные веб-сайты будут отображаться локально, не забудьте проверить разрешение /etc/hosts. [ ! d1]

1
задан 7 April 2018 в 03:30

1 ответ

Каждый раз, когда я запускал boot-repair, он добавляет 5 дополнительных параметров загрузки Windows в основное меню grub, которые не работают. В вашем случае он добавил 11 дополнительных записей!

grub.cfg показывает проблему

Секрет можно найти в файле /etc/grub/grub.cfg:

### BEGIN /etc/grub.d/25_custom ###
    menuentry "Windows UEFI bootmgfw.efi" {
search --fs-uuid --no-floppy --set=root D656-F2A8
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

menuentry "Windows Boot UEFI loader" {
search --fs-uuid --no-floppy --set=root D656-F2A8
chainloader (${root})/EFI/Boot/bkpbootx64.efi
}

menuentry "EFI/ubuntu/fwupx64.efi" {
search --fs-uuid --no-floppy --set=root D656-F2A8
chainloader (${root})/EFI/ubuntu/fwupx64.efi
}

menuentry "Windows UEFI bootmgfw.efi sda1" {
search --fs-uuid --no-floppy --set=root 9478-B6E2
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

menuentry "Windows Boot UEFI loader sda1" {
search --fs-uuid --no-floppy --set=root 9478-B6E2
chainloader (${root})/EFI/Boot/bkpbootx64.efi
### END /etc/grub.d/25_custom ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows Boot Manager (on /dev/nvme0n1p2)' --class windows --class os $menuentry_id_option 'osprober-efi-D656-F2A8' {
    savedefault
    insmod part_gpt
    insmod fat
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root  D656-F2A8
    else
      search --no-floppy --fs-uuid --set=root D656-F2A8
    fi
    chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
menuentry 'Windows Boot Manager (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-efi-9478-B6E2' {
    savedefault
    insmod part_gpt
    insmod fat
    set root='hd0,gpt1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  9478-B6E2
    else
      search --no-floppy --fs-uuid --set=root 9478-B6E2
    fi
    chainloader /efi/Microsoft/Boot/bootmgfw.efi
}
### END /etc/grub.d/30_os-prober ###
[d5 ] В разделе 30_os-prober содержатся «хорошие» записи меню Windows grub, которые вы хотите сохранить. Раздел 25_custom содержит фиктивные записи, созданные boot-repair. Вы не можете отредактировать конфигурационный файл grub, потому что он будет просто перезаписан в следующий раз update-grub.

Раздел 25_custom был создан Boot Repair [!d7 ]

В моей системе:

$ locate 25_custom
/boot/efi/boot-repair/log/20171111_224241/nvme0n1p5/25_custom
/boot/efi/boot-repair/log/20171208_030854/nvme0n1p5/25_custom
/etc/grub.d/25_custom

Взгляните на дополнительные параметры Windows, которые были настроены (и не работают):

$ cat /boot/efi/boot-repair/log/20171208_030854/nvme0n1p5/25_custom
#!/bin/sh
exec tail -n +3 $0

menuentry "Windows UEFI bootmgfw.efi" {
search --fs-uuid --no-floppy --set=root D656-F2A8
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

menuentry "Windows Boot UEFI loader" {
search --fs-uuid --no-floppy --set=root D656-F2A8
chainloader (${root})/EFI/Boot/bkpbootx64.efi
}

menuentry "EFI/ubuntu/fwupx64.efi" {
search --fs-uuid --no-floppy --set=root D656-F2A8
chainloader (${root})/EFI/ubuntu/fwupx64.efi
}

menuentry "Windows UEFI bootmgfw.efi sda1" {
search --fs-uuid --no-floppy --set=root 9478-B6E2
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

menuentry "Windows Boot UEFI loader sda1" {
search --fs-uuid --no-floppy --set=root 9478-B6E2
chainloader (${root})/EFI/Boot/bkpbootx64.efi

Это ошибочные записи boot-repair, созданные в /etc/grub.d/25_custom, которые впоследствии были скомпилированы в \boot\grub\grub.cfg.

Изменение Обратной загрузки Восстановление на 25_custom

Вы хотите отредактировать файл /etc/grub.d/25_custom и удалить все, кроме первых трех строк:

#!/bin/sh
exec tail -n +3 $0
Теперь файл содержит две строки с текстом и одну пустую строку. Сохраните файл. Запустите sudo update-grub. Перезагружать.

Теперь ваше меню больше не раздувается с пятью фиктивными файлами меню Windows, которые не работают.

Двойная проверка есть три строки в 25_custom

[d21 ] Запустите эту команду и убедитесь, что 25_custom имеет три строки:

$ cat /etc/grub.d/25_custom | wc
      3       6      30
#     ^       ^       ^
#     |       |       +--- Number of characters
#     |       +----------- Number of words
#     +------------------- Number of lines

Я добавил комментарии # для расшифровки вывода wc (количество слов).

2
ответ дан 22 May 2018 в 20:18
  • 1
    Я не могу понизить свой собственный ответ и не удалить его, но я могу поддержать вас ... :) Остерегайтесь, чтобы решение GUI всегда получало больше голосов, чем текстовое решение, хотя текстовое решение, как правило, более точное (= технически лучше) – Fabby 7 April 2018 в 11:48

Другие вопросы по тегам:

Похожие вопросы: