Przywróć bootloader Apple na Macu (Intel) po uruchomieniu grub-update przez zewnętrzną instalację Ubuntu


10

Mam Ubuntu zainstalowany na zewnętrznym dysku twardym i używam go jako przenośnej instalacji, którą mogę zabrać ze sobą wszędzie.

Dzisiaj uruchomiłem go na iMacu znajomego i po aktualizacji oprogramowania poprosiłem mnie o zainstalowanie aktualizacji. Więc zrobiłem.

Ponieważ w tym momencie skończyłem, wyłączyłem komputer i odłączyłem zewnętrzny dysk twardy. Natychmiast po tym ponownie uruchomiłem iMaca, aby uruchomił się ponownie w OSX.

Ku mojemu szokowi, przerażeniu i zamieszaniu spotkałem się z ekranem ratunkowym GRUB!

Jak to możliwe? Ubuntu jest zainstalowany na zewnętrznym dysku twardym, a nie na wewnętrznym! Jak, do diabła, GRUB znalazł się na wewnętrznym dysku twardym iMaca?

Co ważniejsze, jak to naprawić?



1
@Fran - Nie, nie dupe. Chciałem przywrócić program ładujący Apple, a nie GRUB.
You'reAGitForNotUsingGit

Odpowiedzi:


9

(Przewiń w dół, aby zobaczyć aktualną poprawkę)

Więc sprawy były jeszcze bardziej skomplikowane, niż się początkowo wydawało.

Aby zachować zgodność z MS-Windows, Apple korzysta z hybrydowego trybu UEFI i Legacy MBR. Najwyraźniej istnieje wartość NVRAM, która mówi oprogramowaniu układowemu, czy próbować uruchomić komputer w trybie UEFI (OS-X), czy w starszym trybie MBR (Windows). Ta wartość jest kontrolowana przez twój wybór w „Preferencjach systemowych> Dysk startowy”. (Nie pytaj mnie dlaczego, zapytaj Apple)

Teraz, aby uruchomić system Ubuntu z zewnętrznego dysku twardego, najpierw wystartowałem z dysku DVD, na którym nagrałem plik ISO rEFInd. (Wybranie „rozruchu EFI” z ikoną DVD, gdy przytrzymujesz Optionklawisz podczas uruchamiania). Po uruchomieniu z tego DVD wybrałem mój zewnętrzny dysk twardy do uruchomienia z wnętrza rEFInd.

To tutaj zaczyna się naprawdę dziwnie. Po poleceniu rEFInd, aby uruchomił się z zewnętrznego dysku twardego, fioletowy ekran GRUBa nigdy się nie pojawił (tak, ustawiłem opóźnienie), a ponadto nie było animacji rozruchu z fioletową kropką. Zamiast tego był to przewijany biały tekst.

Z tego, co mogę powiedzieć, patrząc bliżej na rEFInd przed uruchomieniem rozruchu, jest to, że opcja Ubuntu polegała na załadowaniu konkretnego jądra, a nie tylko rozruchu z dysku.

Oznacza to, że rEFInd jest oczywiście EFI i działa zasadniczo jako zamiennik GRUB-a, mimo że Ubuntu został zainstalowany w trybie MBR na zewnętrznym dysku twardym, ostatecznie uruchomiono go w trybie UEFI.

Ten fakt jest bardzo ważny, a przekonasz się dlaczego za chwilę.

Więc pozwalam programowi Software Updater uruchomić niektóre aktualizacje. Patrząc na dzienniki, wydaje się, że update-grubpolecenie zostało uruchomione podczas procesu instalacji. Tutaj zdarzają się wszystkie złe rzeczy . W tym momencie nie wiem dokładnie, co się stało, ale oto moje najlepsze przypuszczenie: narzędzie do aktualizacji gruba zostało zdezorientowane, ponieważ grub został zainstalowany w trybie MBR, ale Ubuntu był obecnie uruchamiany w trybie UEFI. Ze względu na zamieszanie i fakt, że moduł ładujący jest zainstalowany w innym miejscu, w zależności od tego, w którym modie zostałeś uruchomiony, grub Updater popełnia duży błąd i instaluje grub w trybie MBR na wewnętrznym dysku twardym.


Teraz poprawka!

W moim szczególnym przypadku partycja OS-X była nadal możliwa do uruchomienia, jeśli przytrzymałem Optionklawisz podczas uruchamiania i wybrałem „Macintosh HD”.

Po uruchomieniu systemu OS-X chcesz otworzyć Preferencje systemowe, a następnie przejść do dysku startowego. Wybierz wolumin OS-X, naciśnij Zastosuj lub cokolwiek, uruchom ponownie i BOOM! logo Apple pokazuje!


Teraz, po prostu FYI, myślę, że chociaż to rozwiązuje problem, GRUB nadal znajduje się w sektorze 0, ale nie sądzę, że spowoduje to jakąkolwiek szkodę, a na pewno nie, jeśli zainstalujesz system Windows w Boot Camp, ponieważ boot systemu Windows moduł ładujący po prostu go zastąpiłby

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.