Niedawno zaktualizowałem swój komputer, moja nowa płyta główna (ASUS M5A99X EVO) używa UEFi zamiast zwykłej opcji MBR.
Mam instalację Ubuntu 11.10, którą zrobiłem, gdy miałem poprzedni sprzęt (MSI MS 7267), sam Ubuntu uruchamia się dobrze, podobnie jak Windows 7, jednak Windows 7 używa rozruchu UEFI (GPT), podczas gdy Ubuntu używa MBR.
Mam swoje systemy operacyjne na osobnych dyskach, więc GRUB2 nie zostanie zastąpiony przez Windows Bootloader i viceversa, ponieważ powiedziałem, że oba systemy działają poprawnie same, ale aby to zrobić, muszę w tym przypadku odłączyć jeden dysk Ubuntu jako zapobiega ładowaniu systemu Windows.
Teraz moje pytanie brzmi: jak mogę zmienić / przekonwertować dysk Ubuntu, aby zamiast MBR korzystał z GPT i pozwalał na uruchomienie systemu Windows ?.
Najlepiej bez ponownej instalacji całego systemu lub utraty danych.
A jeśli miałbym wyczyścić dysk, jak mogę zainstalować Ubuntu w GPT, UEFI, cokolwiek to jest tryb ?.
Użyłem gdisk do konwersji z MBR na GPT, ale teraz Ubuntu nie może się uruchomić, wygląda na to, że grub po prostu się nie uruchamia.
Ponownie zainstalowałem system operacyjny, a dysk jest teraz domyślnie GPT, jednak grup-pc
nadal jest używany grub-efi
.
Jak mogę uruchomić system Ubuntu z EFI ?.
Odpowiedzi:
Spis treści:
Terminologia
BIOS = Podstawowy system wejścia / wyjścia
(U) EFI = (Unified) Extensible Firmware Interface
MBR = główny rekord rozruchowy
GPT = Tabela partycji GUID
UEFI / EFI / BIOS = Interfejs oprogramowania wewnętrznego
MBR / GPT = Skąd komputer wie (na dysk twardy), jakie partycje znajdują się na dysku i jak się z nich uruchomić.
UEFI / BIOS
Firmware Interface to sposób, że firmware (oprogramowanie wewnątrz urządzenia) i system operacyjny interakcji. Inicjuje sprzęt, a następnie uruchamia system operacyjny i zapewnia, że sterowniki systemu operacyjnego mogą obsługiwać sprzęt.
BIOS był zwykłym interfejsem oprogramowania układowego, który został użyty. UEFI to nowszy interfejs, który ma kilka funkcji, takich jak szybsze działanie, posiadanie GUI oraz możliwość uruchomienia karty sieciowej i uzyskania adresu IP. UEFI zastępuje EFI. (Ci, którzy rozwijali EFI, zauważyli, że inni robili coś podobnego, więc dołączyli do nich, niosąc ze sobą pomysły EFI. To stało się wtedy UEFI).
BIOS wymaga, aby bootloader znajdował się na początku dysku, jednak UEFI używa do tego partycji i może wybierać spośród wielu programów ładujących.
MBR / GPT + GRUB
MBR jest fragment kodu na początku dysku, który zawiera program ładujący (dla BIOS), a także mapę partycji oraz unikalny identyfikator dysku.
Aby zainstalować GRUB na dysku z MBR, GRUB umieszcza mały program w MBR, aby załadować resztę GRUB z innej części dysku. (Dzieje się tak, ponieważ MBR jest zbyt mały, aby pomieścić cały GRUB). Wybrane miejsce to odstęp między MBR a pierwszą partycją, która zwykle istnieje.
GPT jest standardem określania partitonów. Ma „ochronny” MBR, ale służy to tylko do umożliwienia komputerom z systemem BIOS uruchamiania i zatrzymywania narzędzi, które wiedzą tylko o MBR przed próbą wyrzucenia GPT. Może mieć
(Sposób obsługi GPT zależy od tego, czy uruchamia się przy użyciu systemu BIOS (lub systemu UEFI w trybie emulacji BIOS), czy UEFI. Skoncentruję się na UEFI, ponieważ odnosi się do pytania).
Programy ładujące dla systemów operacyjnych są przechowywane w części o nazwie Partio systemu EFI, która jest sformatowana (zwykle) za pomocą FAT32. Tutaj instalowany jest GRUB.
Konwersja
Pierwszy...
Bawimy się tabelą partycji, więc zagwarantowane bezpieczeństwo nie jest możliwe. To ryzykowna operacja. Jednak metoda nie powinna tracić danych.
Inni spotykają się z tym: nie używaj na komputerach Apple Mac.
Teraz...
Musisz to zrobić na Live CD (lub innej instalacji Linuksa zainstalowanej na innym dysku).
W przypadku dysków GPT musimy używać programu obsługującego GPT. „GPT fdisk” to dobre narzędzie do użycia i tego, czego będę używać. Można go wywołać
gptfdisk
lub wgdisk
zależności od dystrybucji (Ubuntu nazywa togdisk
). Parted (i Gparted) jest również świadomy GPT, więc można go bezpiecznie używać z dyskami GPT.Aby dokonać konwersji, musisz:
1) Zmień rozmiar partycji
Użyj
parted
(wiersza polecenia) lubgparted
(GUI), aby zmienić rozmiar pierwszej i ostatniej partycji. Pierwsza partycja powinna mieć około 200 MB przed nią, a ostatnia partycja powinna mieć od 1 MB do 2 MB (każda z nich zrobi) zdjęta z końca.2) Konwertuj dysk
Biegać
zmienia się urządzenie, które chcesz przekonwertować
/dev/sdx
.Powinien ci powiedzieć, że przekształci tabelę partiton.
Teraz dodaj nową partycję, czyniąc ją typu „system EFI”. Powinien znaleźć wolne miejsce na początku (sugeruję niski numer sektora, np. 34) i automatycznie wykorzystać całe wolne miejsce. W przykładach wykorzystano dysk flash USB o pojemności 4 GB z już zainstalowaną 1 partycją, o zmienionym rozmiarze zgodnie z powyższym opisem.
Powinieneś teraz mieć partycję EFI.
Następnie wyjdź
gdisk
Teraz użyj Gparted (lub wiersza polecenia
mkfs.vfat
), aby sformatować partycję jako FAT32.3) Zainstaluj GRUB
Daje to mniej pewności, że poprzednia część, ponieważ sam tego nie próbowałem.
Nie jestem pewien co do tego kroku, więc zgaduję, używając instrukcji RAOF :
Powinieneś dowiedzieć się, z którą wersją grub-efi zainstalować
Jeśli mówi,
EFI32
zainstalujgrub-efi-ia32
pakiet, jeśli mówi,EFI64
zainstalujgrub-efi-amd64
pakiet. Możesz zainstalować pakiety za pomocąPrawdopodobnie zadziała to tylko wtedy, gdy uruchomiłeś system w trybie EFI.
Jeśli to nie działa, możesz wypróbować te instrukcje krok po kroku (w sekcji „Zainstaluj GRUB2 w systemach (U) EFI”) po
grub-efi
zainstalowaniu.Konfiguracja (+ Dual Boot)
Jeśli instrukcje RAOK działają, powinieneś być w stanie dodać następujący wiersz
/etc/grub.d/40_custom
Zakłada się, że system Windows jest rozpoznawany
hd0
przez GRUB. Może wymagać zmiany nahd1
, aby działał.Teraz biegnij
zaktualizować plik konfiguracyjny.
Referencje i dalsze czytanie
Użyłem kilku źródeł.
źródło
grub-pc
i instalacjęgrub-efi
na płycie CD na żywo (może przed instalacją?)?Ta odpowiedź jest niepełna; Nie testowałem tego. Jest mało prawdopodobne, aby zjadł twoje dane, ale zostałeś ostrzeżony!
Zgaduję, że dzieje się tutaj to, że twój BIOS preferencyjnie uruchamia się ze starszego MBR, więc biedny stary UEFI Windows 7 jest pomijany.
Jedną z fajnych rzeczy w UEFI jest to, że nie powinieneś już martwić się nadpisaniem GRUB-a przez Windows; oba powinny ładnie współistnieć na partycji EFI. Jedną z opcji byłoby zatem przejście na
grub-efi
. Uwaga: Nie jestem pewien, czygrub-efi
rozumie partycje w stylu MSDOS; Myślę , że tak. Jeśli tak się nie stanie, uruchomienie się nie powiedzie i będziesz potrzebować LiveCD do odzyskania. Tak czy inaczej, miej pod ręką LiveCD!Aby przełączyć się na
grub-efi
to, co chcesz/boot/efi
. Dodaj to do/etc/fstab
¹grub-efi
pakietUEFI and Legacy
naUEFI only
(lub podobną opcję)To powinno dać ci instalację Ubuntu z systemem UEFI. Jeśli tak się nie stanie, uruchom ponownie zaufaną płytę LiveCD (lub alternatywną płytę instalacyjną Ubuntu Alternative CD - szukasz opcji „Napraw uszkodzony system”), chroot w systemie i zainstaluj
grub-pc
ponownie.¹: Więcej szczegółów dla tego kroku: Musisz znaleźć to, co jądro Linux nazywa twoją partycją systemową EFI. To będzie coś
/dev/sda2
,/dev/sdb3
lub such². Następnie musisz utworzyć/boot/efi
katalog i dodać wiersz/etc/fstab
. Jeśli twoja partycja EFI to/dev/sdb3
, dodaj następujący wiersz:Po uruchomieniu
sudo mount /boot/efi
powinieneś znaleźć, który/boot/efi
zawieraEFI
katalog z podkatalogiem dla Windows 7.²: Ponieważ masz wiele dysków twardych, dobrym pomysłem może być znalezienie identyfikatora UUID partycji, ponieważ będzie on stabilny podczas dodawania / usuwania dysków twardych, podczas gdy
/dev/sda2
nazwa nie może się zmienić. Można to jednak zrobić po zakończeniu konfiguracji wszystkiego innego.Możesz znaleźć UUID, zaglądając do
/dev/disk/by-uuid
. Na przykład otrzymuję:W moim przypadku wiem, że
/dev/sda1
to moja partycja systemowa EFI, więc mamw moim
/etc/fstab
.źródło
Disk utility
programie takim jak program. Dopóki nie znajdziesz i nie zainstalujesz partycji EFI,grub-efi
nie będzie ona w stanie działać - musi ona włożyć bootloader na partycję systemową EFI.sudo grub-install
isudo update-grub
aby faktycznie zainstalować i skonfigurować GRUB na partycji EFI. Musisz to zrobić po chrootowaniu w instalacji (ponieważ musi wiedzieć o instalacji na dysku twardym). Jeśli potrzebujesz pomocy, mogę dodać szczegóły do odpowiedzi.create partition efi
. Aby uzyskać informacje na temat diskpart, zobacz technet.microsoft.com/en-us/library/cc766465%28WS.10%29.aspxTo idealne rozwiązanie, więc prawdopodobnie będziesz mieć przynajmniej jedną partycję podstawową wolną w tabeli partycji.
Nie musisz konwertować MBR na GPT, aby uruchomić UEFI, po prostu utwórz podstawową partycję FAT, zainstaluj
grub-efi-amd64-bin
pakiet i postępuj zgodnie z instrukcjami w Dodaj ESP do istniejącej instalacji z MBR, która powinna współpracować z aktualnymi wersjami Ubuntu.źródło
diskpart
,dism /apply-image
, a następniebcdboot
(więcej opcji na obu tych oczywiście), aby zainstalować MBR lub GPT niezależnie od sposobu rozruchu.Aby uzupełnić odpowiedź Portablejim (która naprawdę pomogła mi w konwersji z MBR na GPT, dzięki!), Możesz użyć Boot-Repair do ponownej instalacji grub. Naprawienie rozruchu działało jak urok, gdy nie udało mi się ukończyć kroku 3 i jeszcze raz, gdy instalacja systemu Windows 10 spowodowała zniknięcie opcji rozruchu systemu Linux.
źródło