私は最近、HPラップトップにWindows 10とともにデュアルブートでUbuntuをインストールしました。 Windowsオプションを選択するとgrubにループバックするため、最初はgrubを使用してWindowsを起動できませんでした。
その後、ブート修復を実行すると、これらの追加オプションがすべてgrubメニューに表示されました。
「Windows UEFI bootmgfw.efi」オプションを使用してWindowsを開くことはできますが、「Windows Boot Manager(/ dev/sda1)」の標準オプションは使用できません。
これらのエントリを減らす方法と、後者のオプションを使用してWindowsを起動できないのはなぜですか?
これがgrubの画像です。最初のオプションはUbuntuです。
Windowsはここではトピック外です、 しかし、答えは、これは非常に古い技術であり、ブートセクターは512バイトしかないため、保持したいものすべてを保持するのに十分な大きさではないということです。
GRUBのエントリをすべて自分で簡単に追加および削除するには、以下を実行してください。
次のコマンドを実行して、 grub-customizer をインストールします。
Sudo add-apt-repository ppa:danielrichter2007/grub-customizer
Sudo apt update
Sudo apt install grub-customizer
深刻な問題が発生した場合は、システムのバックアップを復元してください。
boot-repair
を実行するたびに、動作しないメインgrub
メニューに5余分なWindowsブートオプションが追加されます。あなたの場合、それは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 ###
セクション30_os-prober
には、保持したい「良い」Windows grub
メニューエントリが含まれています。セクション25_custom
には、boot-repair
によって作成された偽のエントリが含まれています。 grub構成ファイルは、次回update-grub
が実行されるときに単純に上書きされるため、編集できません。
25_custom
はブート修復によって作成されました私のシステムでは:
$ 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
への逆ブート修復の変更Sudo -H gedit /etc/grub.d/25_custom
を使用して、最初の3行を除くすべてを削除します。
#!/bin/sh
exec tail -n +3 $0
Sudo update-grub
を実行します。これで、機能しない5つの偽のWindowsメニューエントリでメニューが肥大化しなくなりました。
25_custom
に3行あることを再確認してくださいこのコマンドを実行し、25_custom
に3行があることを確認します。
$ wc /etc/grub.d/25_custom
3 6 30
# ^ ^ ^
# | | +--- Number of characters
# | +----------- Number of words
# +------------------- Number of lines
#
コメントをwc
(単語数)出力の解読に追加しました。