Zdaję sobie sprawę, że problem został rozwiązany, ale chcę zwrócić uwagę na to, co poszło źle i jak to powinno być stałe (zarówno przez użytkowników końcowych i przez programistów Ubuntu).
Po pierwsze, programiści Ubuntu postanowili - najbardziej nierozsądnie - stworzyć konfigurację GRUB, która opiera się na plikach na /
partycji root ( ) Ubuntu , a także na partycji systemowej EFI (ESP). Powoduje to, że GRUB jest podatny na usunięcie lub uszkodzenie partycji Linux, a zatem utrudnia uruchomienie komputera po usunięciu Ubuntu lub jeśli instalacja Ubuntu jest w jakiś sposób uszkodzona. Ta podatność jest niepotrzebna; istnieje możliwość skonfigurowania GRUB-a tak, aby szukał wszystkich plików obsługi i konfiguracji na ESP. Jeśli GRUB został skonfigurowany w ten sposób (podobnie jak Fedora), usunięcie Ubuntu nie wpłynęłoby na zdolność GRUB do przekierowania do Windows. System nadal uruchamiałby się przez GRUB, ale przynajmniej nadal się uruchamiał. Wstydź się na Ubuntu za niewłaściwe ustawienie GRUB-a.
Po drugie, w oparciu o wspomniane nazwy plików, wydaje się, że w pewnym momencie uruchomiłeś narzędzie do naprawy rozruchu Ubuntu. To narzędzie automatycznie zmienia nazwę modułu ładującego system Windows EFI/Microsoft/Boot/bootmgfw.efi
i umieszcza kopię GRUB na swoim miejscu. Robi to samo z awaryjnym programem ładującym EFI i wrzuca EFI/BOOT/bootx64.efi
kolejną kopię GRUB-a jako EFI/Microsoft/Boot/bootx64.efi
z powodów, których nie twierdzę, że rozumiem. Jest to zrobione jako obejście błędu w kilku EFI. Problem polega na tym, że Boot Repair robi to domyślnie. Na większości komputerów tak nie jestniezbędny. Gdy później pożądane jest wprowadzenie zmian w konfiguracji rozruchu, zmiana nazwy i replikacja GRUB-a staje się komplikacją, ponieważ użytkownicy nie mogą zgadnąć, co się dzieje. Wstydź się programistom Boot Repair za to, że nie są pewni swoich napraw. (W ich obronie bardzo trudno byłoby jednak Naprawie rozruchu niezawodnie wykryć, które komputery zawierają błędy, które wymagają przeniesienia plików rozruchowych w taki sposób, jak ma to miejsce domyślnie).
Ważny jest jeszcze jeden punkt: w prawidłowo działającym systemie EFI lista programów rozruchowych jest przechowywana w pamięci NVRAM. EFI próbuje kolejno wykonać każdy z programów z tej listy; jeśli jeden zawiedzie lub jest nieobecny, następna jest próbowana. Podczas instalacji Ubuntu dodaje swoją wersję GRUB-a na początek listy. Większość plików EFI umożliwia także użytkownikom określenie programu rozruchowego, który ma być używany z wbudowanego menedżera rozruchu, ale ten wbudowany menedżer rozruchu jest prosty w przypadku większości plików EFI.
Zsumuj wszystkie te czynniki, a najprostszym rozwiązaniem pierwotnego problemu będzie:
- Cofnij zmiany narzędzia Boot Repair. Można to zrobić za pomocą samego narzędzia Boot Repair; ma menu Opcje zaawansowane z polem wyboru o nazwie „Przywróć kopie zapasowe EFI”. Użyj tego, a wiele kopii GRUBA zostanie usuniętych, a moduł ładujący Windows zostanie przywrócony. Alternatywnie można to zrobić ręcznie. Co najważniejsze, kopia zapasowa
bootmgfw.efi
(prawdopodobnie nazywana bkpbootmgfw.efi
, chociaż niektóre wersje Boot Repair używały innych nazw) powinna zostać skopiowana EFI/Microsoft/Boot/bootmgfw.efi
na ESP.
- Usuń GRUB w jego oficjalnej / właściwej lokalizacji -
EFI/ubuntu/grubx64.efi
dla Ubuntu. Jeśli Bezpieczny rozruch był aktywny, EFI/ubuntu/shimx64.efi
konieczne byłoby jego usunięcie . W rzeczywistości usunięcie całego EFI/ubuntu
katalogu lub przynajmniej zmiana jego nazwy wykona zadanie w każdym przypadku.
Otóż to. Po osiągnięciu tych dwóch celów EFI pominie opcję rozruchu Ubuntu, ponieważ nie jest już ważna i uruchomi system Windows. Niektóre pliki EFI również automatycznie usuwają opcję uruchamiania Ubuntu z menu menedżerów rozruchu, chociaż ta praktyka nie jest uniwersalna.
Zauważ, że w twoim przypadku, Matthew, nie polecam robić tych rzeczy; masz działającą konfigurację i, jak mówią, „jeśli się nie zepsuła, nie naprawiaj tego”. Być może w ESP pozostało kilka zbłąkanych plików, ale nie wyrządzają one żadnej szkody, więc najlepiej po prostu zostawić to w spokoju. Przedstawiłem swoją odpowiedź w nadziei, że ktoś uzna ją za przydatną.
EDYCJA: Powyższe było prawidłowe, kiedy pierwszy raz to napisałem, a zasady pozostają takie same; jednak Boot Repair nie zmienia już automatycznie nazwy modułu ładującego Windows i zastępuje go inną kopią GRUB-a. (Naprawa rozruchu może to zrobić opcjonalnie, ale opcja jest ukryta w menu opcji zaawansowanych, więc nie jest już domyślnie wykonywana). Fakt ten ułatwia dziś odzyskanie tego problemu niż w 2013 r. W większości przypadków wystarczy tylko usuń EFI/ubuntu
katalog w ESP, aby system uruchomił się bezpośrednio w systemie Windows. Jeśli po wykonaniu tego nadal pojawia się GRUB, być może użyłeś opcji Boot Boot do wykonania kopii zapasowej i zmiany nazw plików rozruchowych, w takim przypadku użycie go do cofnięcia tych działań jest prawidłowe, jak wspomniano wcześniej.
Inną opcją jest użycie wbudowanego menedżera rozruchu komputera (zwykle dostępny po naciśnięciu klawisza funkcyjnego, Esc lub Enter wkrótce po włączeniu komputera), aby ominąć GRUB i uruchomić system Windows. Następnie możesz użyć EasyUEFI, aby dostosować kolejność rozruchu i / lub usunąć ubuntu
wpis z listy rozruchu. Ta czynność nie usunie GRUB-a z ESP, ale obejdzie GRUB-a.