Błąd: tabela partycji wymaga osobnej partycji dla kodu modułu ładującego rozruch (problem EFI)

12

Problem

Próbuję zainstalować Ubuntu 12.04 (64-bit, alternatywnie Mac) na moim 13-calowym MacBooku Pro (model 7,1. Połowa 2010 r . ) . MacBook Pro ma OSX 10.8.3 i staram się to zrobić dual-bootable (tzn. aby móc uruchomić system Ubuntu lub OSX). Podczas uruchamiania z płyty CD na żywo i wybierając „Wypróbuj Ubuntu”, stworzyłem rzekomo niezbędne tabele partycji i byłem gotowy do instalacji. W procesie instalacji wybrałem mój nowo utworzona partycja „ext4”, zmieniła ją (w instalatorze) na „Użyj jako systemu plików kronikowania ext4” i nacisnęła przycisk Kontynuuj. Pojawiło się jednak następujące okno:

Format tabeli partycji używany na dyskach zwykle wymaga utworzenia osobnej partycji dla kodu modułu ładującego rozruch.  Ta partycja powinna zostać oznaczona jako „Obszar rozruchowy zarezerwowanego systemu BIOS” i powinna mieć rozmiar co najmniej 1 MB.  Zauważ, że to nie to samo, co partycja uruchomiona na / boot.  Jeśli nie wrócisz do menu partycjonowania i nie naprawisz tego błędu, instalacja modułu ładującego może się później nie powieść, chociaż nadal można zainstalować moduł ładujący na partycji.

Poniżej znajduje się migawka mojej tablicy partycji w GParted.

GParted konfiguracja tablicy partycji

Poniżej znajduje się migawka okna instalacji.

Okno instalacji


Hipoteza

@Seth i ja jesteśmy nastawieni na myślenie, że jest to problem polegający na tym, że Ubuntu nie wykrywa, że ​​mój komputer używa EFI zamiast BIOS-u. Myślę, że jeśli w jakiś sposób uda nam się przekonać Ubuntu, że korzystam z komputera korzystającego z EFI, instalacja przebiegnie płynniej. Ponieważ jednak korzystam z komputera MacBook Pro, użytkownicy, którzy mieli podobne problemy z systemem Windows, nie będą mieli dla mnie takich samych (lub innych przyszłych problemów).


Rzeczy sprawdzone i zbadane

Poniżej znajdują się rzeczy, które próbowałem i zbadałem. Będę go aktualizować w miarę postępu tego problemu.

  1. Próbowałem zbadać ten problem i natknąłem się również na ten wątek . Po omówieniu tego problemu z ludźmi na czacie jestem - jesteśmy - prawie pewni, że to problem sprzętowy.
  2. Dodatkowo wypróbowałem tę wiki , ale wiki jest ukierunkowana na system Windows i ponownie jestem prawie pewien, że jest to problem związany ze sprzętem. Aktualizacja: poszedłem naprzód i wypróbowałem sekcję, z którą się łączyłem, i nie do końca się ćwiczyłem. Postępując zgodnie z instrukcjami, nie mogłem kliknąć karty „Lokalizacja GRUB”, ponieważ została wyłączona:lokalizacja gruba wyłączona
  3. Innym niedoświadczony opcja @Seth i Podszedłem został pominięciem błędu, a następnie uruchomienie programu rozruchowego naprawy wymienione powyżej. Istnieją jednak obawy związane z tym, że jest to niebezpieczne, dlatego chętnie usłyszę kolejną opinię.
  4. Wypróbowałem rozwiązanie dostarczone przez @ rod-smith . Jednak, jak widać w komentarzach do jego odpowiedzi, natknąłem się na pewne problemy. Podczas próby wykonania alternatywnych kroków w kroku 10, uruchomienie spowodowało, że pusty ekran nie znikał (ostatnia ilość czasu, jaką spędziłem na tym ekranie, to około 40 minut do ponownego uruchomienia). Kontynuując wykonywanie instrukcji, zanim pojawi się krok 18 (czego nigdy nie robi), pojawia się następujący błąd:

    OSTRZEŻENIE: konsola nie będzie dostępna dla
    błędu systemu operacyjnego : nie znaleziono odpowiedniego trybu wideo.
    (patrz zdjęcie)

  5. Zachowując ustawienia partycji / wszystkich ustawień zgodnie z moim wyjaśnieniem w czwartym punkcie (powyżej), spróbowałem łącza w drugim punkcie powyżej, ponieważ GRUB został zainstalowany. Miałem dostęp do menu i przeglądałem wszystko, co trzeba było zrobić. Jednak po ponownym uruchomieniu natrafiłem na ten sam nieokreślony pusty ekran.

  6. Zgodnie z postem @ TheMysteriousMan próbowałem również wybrać opcję /dev/sda1instalacji modułu ładującego, ale otrzymałem ten sam błąd.

  7. Wypróbowano również Ubuntu 13.04 (64-bit, alternatywny Mac), ale ponownie pojawia się ten sam błąd.

  8. Zauważyłem coś, że po dwukrotnym kliknięciu partycji (podczas procesu instalacji widać na trzecim zdjęciu tego postu) i wyświetleniu okna „Edytuj partycję”, pod rozwijanym menu „Użyj jako:” (gdzie opcje np. „Pojawia się„ system plików kronikowania Ext4 ”), mam opcję„ Zarezerwowany obszar rozruchowy BIOS ”. Zastanawiam się, czy błąd każe mi zrobić coś z opcją. Jeśli prosi mnie o skorzystanie z tej opcji, czy powinienem utworzyć nową partycję i ustawić na niej tę opcję? Jak duża powinna być partycja? Czy mogę umieścić go na istniejącej partycji?


TLDR i pytanie

Główne pytanie tutaj: jak uzyskać ten komunikat o błędzie? Czy muszę wykonać konfigurację, której jeszcze nie mam? Czy jest to bezpieczny komunikat o błędzie do obejścia?

Jeremy
źródło

Odpowiedzi:

11

Przeczytaj całą odpowiedź przed wykonaniem poniższych instrukcji.

Aby rozwiązać ten problem, musisz utworzyć dodatkową partycję.

  1. Zainstaluj rEFIt lub rEFInd 1 w Ubuntu.
  2. Uruchom system Mac OS X.
  3. Uruchom aplikację OS Narzędzie dyskowe.
  4. Upewnij się, że już zmieniłeś rozmiar partycji „Macintosh HD”, aby mieć miejsce na nowe partycje (wybrałem ~ 50 GiB).
  5. Uruchom ponownie, używając Live CD Ubuntu.
  6. Wybierz „Wypróbuj Ubuntu”.
  7. Uruchom aplikację o nazwie GParted.
  8. Utwórz nową partycję o nazwie „bootloader” z systemem plików ReiserFS. Zrobiłem tę partycję 500 MiB. Nie jestem do końca pewien, czy system plików lub rozmiar ma znaczenie. Zgodnie ze stroną partycji rozruchowej BIOS-u Wikipedii ta partycja może być tak mała jak 1 MiB.
  9. Utwórz nową partycję wymiany linux, która ma rozmiar około 1 GiB. Nazwałem to „zamianą”.
  10. Utwórz partycję ext4 o nazwie „podstawowa”, wykorzystując resztę nieprzydzielonego miejsca.

Po wykonaniu powyższych instrukcji GParted powinien wyglądać podobnie do poniższego obrazu. Pamiętaj, że wziąłem to po instalacji. Etykiety dla moich partycji wymiany Linuxa i ext4 zniknęły, a ikony klucza / wykrzyknika zostały dodane po instalacji przez Ubuntu. Ponadto nie ma potrzeby ustawiania bios_grubflagi dla partycji ResiserFS, została ona również automatycznie dodana po instalacji (lub podczas). GParted

Teraz, gdy partycje są skonfigurowane, wróć na pulpit, kliknij „Zainstaluj Ubuntu 12.04” (powinno to również pojawić się w pasku menu po lewej, jeśli nie ma go na pulpicie) i postępuj zgodnie z poniższymi instrukcjami

  1. Przejrzyj opcje (spersonalizuj je w dowolny sposób), aż dojdziesz do ekranu „Typ instalacji”, który zapyta Cię, jak chcesz zainstalować Ubuntu.
  2. Na ekranie „Typ instalacji” wybierz „Coś innego” i kontynuuj (naciśnij „Zainstaluj teraz”).
  3. Nastąpi przejście do okna z listą wszystkich posiadanych partycji. Zidentyfikuj partycję „bootloader” (jeśli etykiety się nie wyświetlają, zidentyfikuj ją według kolumny urządzenia, typu lub rozmiaru) i kliknij ją dwukrotnie.
  4. Powinno zostać wyświetlone okno z komunikatem „Edytuj partycję”. Wybierz pole opcji obok „Użyj jako:” i kliknij wartość „Zarezerwowany obszar rozruchowy BIOS” (rysunek poniżej). Wciśnij OK." Wybierz „Zarezerwowany obszar rozruchowy BIOS”
  5. Zidentyfikuj właśnie utworzoną partycję ext4 i wyświetl okno „Edytuj partycję”.
  6. Ustaw wartość „Użyj jako:” na „System plików kronikowania Ext4”, zaznacz opcję formatowania. Upewnij się również, że ustawiłeś pole montowania na /. Wciśnij OK."
  7. Śmiało i kontynuuj proces, dostosowując wyniki do swoich potrzeb.

Odtąd wszystko powinno działać dobrze. Upewnij się, że masz zainstalowany REFIt lub rEFInd, abyś mógł później uruchomić system Ubuntu 1 .

1. Okazuje się, że jeśli utkniesz podczas uruchamiania, zamiast używać programu takiego jak rEFIt i jego poprzednik, możesz po prostu przytrzymać alt/optionklawisz, aby uruchomić komputer na partycji / dysku / czymkolwiek.

Jeremy
źródło
5

Ostatnim razem, gdy sprawdzałem (dwie lub trzy wersje temu), wersja alternatywna Ubuntu dla komputerów Mac była w zasadzie zwykłym Ubuntu, ale pozbawiona opcji uruchamiania EFI. Może się to wydawać dziwne, ponieważ komputery Mac używają EFI, ale problem polega na tym, że EFI komputera Mac jest dziwny , a standardowy instalator Ubuntu miał problemy z EFI komputera Mac. (Nie pamiętam jednak dokładnej natury problemów). Ponieważ komputery Mac zapewniają warstwę zgodności z systemem BIOS, rozruch w ten sposób ma sens; a gdy GRUB instaluje się na dysku GPT w trybie rozruchu BIOS, konieczne jest użycie partycji rozruchowej BIOS (którą okno dialogowe Ubuntu określa jako „zarezerwowany obszar rozruchowy BIOS”). Dlatego okno dialogowe z pytaniem o ten obszar.

Jedną z opcji postępowania jest zaakceptowanie prośby o utworzenie partycji rozruchowej systemu BIOS. Ubuntu uruchomi się wtedy w trybie BIOS, jeśli wszystko pójdzie dobrze. Możesz następnie zmienić tryb rozruchu systemu Linux, instalując moduł ładujący w trybie EFI. Zobacz mój EFI-Bootowanie Ubuntu na Macu, gdzie znajduje się jeden przykład tego, jak to zrobić, a zwłaszcza sekcja zatytułowana „Naprawianie instalacji”.

Inną opcją jest próba użycia standardowego instalatora Ubuntu zamiast wariantu Mac. Może być potrzebna pomoc przy uruchamianiu; możliwe, że REFInd pomoże w tym, chociaż nie mogę składać żadnych obietnic. Po uruchomieniu instalatora powinieneś upewnić się, że działa w trybie EFI, szukając katalogu o nazwie /sys/firmware/efi. Jeśli jest obecny, uruchomiłeś się w trybie EFI, a jeśli go nie ma, prawdopodobnie uruchomiłeś się w trybie BIOS i powinieneś spróbować ponownie.

Rod Smith
źródło
Dzięki! Wystąpiło kilka problemów podczas przeglądania sekcji „Instalowanie Ubuntu”. Zainstalowałem gdisk, ale polecenia nie działają. Podczas działania sudo gdisk /dev/disk0s3pojawia się komunikat „Błąd wynosi 16”. Próbowałem więc usunąć go ręcznie w Narzędziu dyskowym i utworzyć nową partycję za pomocą gdisk (with n), ale potem pojawia się komunikat „Błąd 2.” Nie mogłem znaleźć żadnych dokumentów, ale ponieważ jesteś programistą, mam nadzieję, że możesz rzucić nieco światła na ten problem.
Jeremy
Podajesz partycję ( /dev/disk0s3) jako opcję gdisk, ale musisz określić cały dysk ( /dev/disk0).
Rod Smith
Zepsułem. Jako pierwszy sektor zamiast ostatniego wstawiłem „+ 128M”. To podpowiada mi ostatni sektor. Co powinienem zrobić? = / (Jeśli chcesz wejść do pokoju czatu „General Room”, byłoby świetnie: D)
jeremy
Naciśnij Ctrl + C, aby wyjść z programu i spróbuj ponownie.
Rod Smith
Nie mam pojęcia, jak wykonać krok 1 w kroku 10 „Naprawianie instalacji” (zaczyna się od „Skopiuj sterownik EFI dla systemu plików, którego używałeś / boot (lub głównego systemu plików, jeśli nie podzieliłeś / boot”) ... ") Szczerze mówiąc, nie wiedziałbym nawet, co przeszukać. Czy masz jakieś prostsze instrukcje? :) Jak dotąd dzięki.
Jeremy,
3

Czy próbowałeś wybrać /dev/sda1miejsce instalacji programu ładującego? W dolnej części niestandardowego menu instalacji znajduje się miejsce oznaczone:

Device for bootloader installation

Wybierz / dev / sda1 z menu rozwijanego.

AbstruselyArcane
źródło
To właśnie miałem na myśli wcześniej na czacie. Po prostu wybierz partycję EFI na dysku głównym jako lokalizację bootloadera. Według Wikipedii może to wpłynąć na późniejsze aktualizacje oprogramowania układowego, ale mój komputer Mac był wystarczająco stary, że tak naprawdę mnie to nie obchodziło (prawdopodobnie nie będą to żadne przydatne aktualizacje).
Chan-Ho Suh
@ Chan-HoSuh i OP: Niestety to nie zadziałało. W każdym razie dzięki.
Jeremy,