EFI boot Ubuntu 14.04 na Macu bez rEFInd

8

Chcę całkowicie usunąć OS X z mojego komputera Mac i zainstalować pojedynczo Ubuntu 14.04 LTS.

Chociaż chcę użyć nowszej metody rozruchu EFI zamiast starszego rozruchu systemu BIOS, nie chcę używać rEFInd ani żadnego programu ładującego innej firmy, ale zamiast tego chcę użyć domyślnego programu ładującego Mac.

Powodem tego jest to, że chcę wyeliminować około 30 sekundowe opóźnienie spowodowane innymi znanymi metodami, a także chcę uzyskać dostęp do różnych narzędzi związanych z EFI.

Czy możesz podać szczegółową metodę krok po kroku, aby to osiągnąć?

Rohith Madhavan
źródło

Odpowiedzi:

10

Ten proces usunie OS X i wszelkie inne dane, które masz na komputerze. Przed kontynuowaniem upewnij się, aby wykonać kopię zapasową systemu.

Możesz utworzyć dysk odzyskiwania, aby w razie potrzeby móc przywrócić OSX w późniejszym terminie.

Utwórz Live USB za pomocą Ubuntu

Szczegółowe instrukcje znajdują się na tej stronie . UNetbootin jest zalecany, ponieważ jest on wieloplatformowy i zapewnia graficzny interfejs użytkownika (GUI).

UWAGA - NIE używaj +macwersji, ponieważ nie obsługuje rozruchu EFI.

Uruchom z Live USB

Sztuką do uruchomienia z USB na komputerach Mac jest przytrzymanie optionklawisza zaraz po włączeniu urządzenia. Wybierz EFI Boot z tego menu.

wprowadź opis zdjęcia tutaj

Ubuntu powinien teraz uruchomić się z USB. Zainstaluj Ubuntu za pomocą opcji Wymaż i użyj opcji Cały dysk .

wprowadź opis zdjęcia tutaj

Po pierwsze, po ponownym uruchomieniu / włączeniu komputera Mac zobaczysz szary ekran programu ładującego Mac przez około 30 lat, a następnie delikatnie migający folder z „?” wewnątrz. Jeśli teraz włożysz instalator USB, powinien się uruchomić. Jeśli nie, spróbuj przytrzymać przycisk zasilania, aby wymusić wyłączenie zasilania, a następnie postępuj zgodnie z instrukcjami rozruchowymi USB, aby je uruchomić.

Uruchom ręcznie z dysku twardego

W tym momencie nie można uruchomić systemu, ponieważ bootloader Maca oczekuje, że partycja EFI zostanie sformatowana jako HFS +, typowy system plików Mac, podczas gdy instalator Ubuntu faktycznie formatuje ją jako VFAT.

W tym kroku instruujemy GRUB na Live USB, aby uruchamiał nowo zainstalowany Ubuntu na dysku twardym. - Będzie to wymagało poważnego pisania, ale po uruchomieniu w ten sposób będziemy gotowi skonfigurować automatyczne uruchamianie w następnym kroku.

Jeśli korzystasz z instalatora pulpitu, przytrzymaj shiftklawisz, aby wyświetlić menu programu ładującego GRUB.

Kiedy zobaczysz menu rozruchowe GRUB, nie wybieraj żadnych wpisów. Zamiast tego naciśnij, Caby wywołać konsolę GRUB.

W konsoli Grub wpisz ls

grub> ls 
(memdisk) (hd0) (hd0,msdos) (hd1) (hd2) (hd2,gpt3) (hd2,gpt2)
(hd2,gpt1)

Możesz nie uzyskać dokładnie takich samych wyników, ale będziesz mieć podobne opcje.

Teraz znajdź partycję zawierającą katalog domowy użytkownika.

grub> ls (hd2,gpt2)/home
rohith/

Próbuj, aż znajdziesz.

Wynik z ostatniego etapu składa się z dwóch części: (hdX,gptY). Musisz zachować tę hdXczęść, ale przejrzyj wszystkie gptYopcje w poszukiwaniu katalogu / boot / grub.

grub> ls (hd2,gpt2)/boot/grub
unicode.pf2 [...] grub.cfg

Teraz chcesz ustawić to jako root dla dalszych poleceń.

grub> set root=(hd2,gpt2)

Jedynym sposobem na prawidłowe uruchomienie jest użycie UUID dysku.

grub> ls -l (hd2,gpt2)

Zanotuj identyfikator UUID. Będziesz musiał wpisać go ręcznie w następnym kroku.

grub> linux /boot/vmlinuz〈Tab here!〉.efi.signed root=UUID=〈the UUID from above〉

Konsola GRUB może wykonywać uzupełnianie tabulatorów, więc jeśli po prostu napiszesz część vmlinuz i uderzysz tab, a następnie uderzysz. i tabznowu nie będziesz musiał wpisywać całej nazwy pliku. upewnij się, że efi.signedczęść jest obecna.

Teraz ustaw początkowy dysk RAM

grub> initrd /boot/initrd〈Tab here!〉

Polecenie powinno być możliwe do uruchomienia z dysku twardego

grub> boot

wprowadź opis zdjęcia tutaj

Konfigurowanie automatycznego rozruchu

Uruchomiłeś się do nowo zainstalowanego systemu Ubuntu. Następnym krokiem jest automatyczne uruchamianie i bezbolesne uruchamianie, poprzez ponowne sformatowanie /boot/efipartycji w systemie plików HFS +, którego oczekuje Mac, i umożliwienie rozruchu od razu.

1. Instalowanie dodatkowych pakietów

Teraz otwórz terminal i wpisz

sudo add-apt-repository ppa:detly/mactel-utils
sudo apt-get update
sudo apt-get install mactel-boot hfsprogs gdisk grub-efi-amd64

2. Ponowne formatowanie partycji EFI

Uruchom, mountaby uzyskać listę zamontowanych systemów plików i poszukaj wszystkiego zamontowanego w / boot / efi. Odmontuj to.

sudo umount /dev/sda1

Teraz używamy gdiskdo usunięcia partycji VFAT i utworzenia HFS +

sudo gdisk /dev/sda

(Pamiętaj, że na końcu nazwy dysku NIE MA numeru!)

naciśnij p

Potwierdź, że pierwsza partycja ma typ EF00. Teraz usuwamy tę EF00partycję.

naciśnij d

Utwórz nowy HFS + jeden na swoim miejscu.

naciśnij n

Naciśnij klawisz Enter, aby wyświetlić opcje pierwszego i ostatniego sektora.

Wpisz AF00kod systemu plików.

Użyj ppolecenia, aby dokładnie sprawdzić zmiany, a następnie wnapisać.

Teraz mamy niesformatowaną partycję HFS +. Sformatuj za pomocą:

sudo mkfs.hfsplus /dev/sda1 -v ubuntu

3. Aktualizacja tabeli systemów plików

Edytuj / etc / fstab

sudoedit /etc/fstab

Usuń linie odnoszące się do /boot/efiużywania Ctrl+K.

Teraz wpisz następujące polecenia -

sudo bash -c 'echo $(blkid -o export -s UUID /dev/sda1) /boot/efi auto defaults 0 0 >> /etc/fstab'
mount /boot/efi

4. Instalowanie GRUB-a na partycji HFS

sudo bash -c 'echo "This file is required for booting" > /boot/efi/mach_kernel'

Zainstaluj GRUB i „pobłogosław” system plików.

sudo grub-install --target x86_64-efi --boot-directory=/boot --efi-directory=/boot/efi
sudo hfs-bless "/boot/efi/System/Library/CoreServices/boot.efi"

EDYTUJ Niektóre rozwiązania problemów: Postępując zgodnie z tymi instrukcjami na Ubuntu 14.04 Trusty Tahr, otrzymałem następujący komunikat o błędziegrub-install

Installing for x86_64-efi platform.grub-install
error: Can't create file: No such file or directory.

Po ponownym uruchomieniu z straceustaliłem, że nie szuka on pliku o nazwie /boot/efi/mach_kernel, ale plik o nazwie /boot/efi/EFI/ubuntu/mach_kerneli po utworzeniu tego pliku i ponownym uruchomieniu grub-installwszystko wydaje się działać. EDYCJA KOŃCOWA

5. Usuwanie opóźnienia rozruchu

Aby ustawić domyślną pozycję rozruchową EFI, uruchom

sudo efibootmgr

Pozbądź się dodatkowych wpisów -

sudo efibootmgr -b xxxx -B

gdzie xxxx to numer rozruchowy uzyskany z sudo efibootmgr

Teraz ustaw domyślny wpis -

sudo efibootmgr -o xxxx

System powinien teraz być bootowalny!

KREDYTY

Jason Heeris - W swoim oryginalnym poście wykorzystano PPA.

Rohith Madhavan - W poście na Ask Ubuntu, drobne modyfikacje.

Rohith Madhavan
źródło
W kroku 4 musisz zainstalować / dev / sda1, zanim spróbujesz zainstalować grub
pshirishreddy
Czy coś jest możliwe jako podwójny rozruch? Byłem w stanie zainstalować Ubuntu wraz z OSX na moim MBP (8,2) bez żadnego refitlub refind. Wszystko działa naprawdę dobrze (oprócz mojego wyświetlacza zewnętrznego). Jednak próbowałem tego samego na nowszej siatkówce MBP i nie mogę tego zrobić. Wygląda tak dobrze w trybie wypróbowania ... zewnętrzny wyświetlacz działa od razu po wyjęciu z pudełka itp. Instalacja również jest w porządku. Ale nie mogę dostać mojej MBP Retina zbyt boot boot Ubuntu. Czy jest coś, co mogę zrobić po zainstalowaniu Ubuntu, aby go uruchomić?
Matt Bannert,
Znalazłem efibootmgrdodatkowe zagadkowe (choć przypadkowo to dla mnie zadziałało). A strona podręcznika man również nie jest łatwa do zrozumienia. Co oznaczają moje wybory? Co mogę usunąć? (Dlaczego mam usuwać rzeczy, nie wystarczy ustawić kolejność rozruchu?)
zrajm 15.04.16
Właśnie zainstalowałem Ubuntu 17.04 na moim późnym komputerze Mac Book Pro za pomocą opcji „Wymaż dysk i zainstaluj Ubunu”. Uruchamia się, tylko powoli. Istnieją dwie partycje: / dev / sda1 „BIOS Boot” i / dev / sda2 „Linux Filesystem” zamontowany w /. Katalog / boot / znajduje się w /. Jeśli zmienię rozmiar partycji i utworzę partycję HSF + / boot / czy powinienem być w stanie utworzyć boot EFI?
Martin