Spraw, by UEFI, GPT, Bootloader, SSD, USB, Linux i Windows współpracowały ze sobą

22

Lubię używać najnowszego sprzętu i najnowszego oprogramowania; więc mam laptopa (Lenovo X220) z

  • UEFI zamiast BIOS
  • dysk SSD zamiast dysku twardego
  • Schemat partycjonowania GPT zamiast MBR
  • USB do rozruchu zamiast dysków optycznych.

Muszę używać zarówno systemu Windows, jak i Linux. Próbowałem zmusić ich do współpracy, ale mi się nie udało.

Większość systemów dystrybucji Linux nie działa nawet w systemach UEFI uruchamianych z USB. (Nawet samozwańcza nowatorska Fedora . Próbowałem także Linux Mint Debian Edition i Sabayon Linux (zgodnie z tym przewodnikiem ), które nie działały. Tylko Ubuntu działało dla mnie.

Najpierw zainstalowałem system Windows 8, który stworzył system sda1: Recovery, sda2: EFI, sda3: msftres, sda4: NTFS Windows. Windows działał bez problemu. Następnie stworzyłem sda5: linux-swap i zainstalowałem Ubuntu w sda6: btrfs. Po ponownym uruchomieniu nie otrzymałem GRUB2 zgodnie z oczekiwaniami, ale zamiast tego mój system właśnie uruchomił się w Ubuntu. Nie mogłem już uzyskać dostępu do systemu Windows.

Po naprawieniu dpkg w Ubuntu btrfs , postępowałem zgodnie z dokumentacją Ubuntu dotyczącą uruchamiania UEFI . Rezultat pozostawił mi zepsuty GRUB2, ale co ciekawe, gdy chciałem wybrać urządzenie, z którego chcesz uruchomić komputer, pokazano mi nie tylko wewnętrzny dysk SSD, podłączone urządzenie USB lub LAN, ale także Grub2 (uszkodzony), Ubuntu i Windows .

Wynik nie jest dla mnie zbyt satysfakcjonujący.

Co musiałbym zrobić, aby wszystko naprawić? Albo inaczej pytam, jaki system operacyjny powinienem zainstalować w jakim momencie, biorąc pod uwagę moje możliwości i wymagania, aby mieć działający bootloader w moim systemie UEFI GPT, który prezentuje mi działającego Linuxa i Windowsa.

gbag
źródło
Znalazłem to w Google: rodsbooks.com/efi-bootloaders
Harry Johnston,
Przydatny również w tym kontekście: unix.stackexchange.com/a/40775/12779
Marco

Odpowiedzi:

23

OK, to był bardzo angażujący proces, ale rozwiązałem swój problem i wszystko działa razem tak, jak powinno.

Dokumentuję rozwiązanie dla wszystkich:

  1. Należy zacząć od GParted Live i utworzyć nową tabelę partycji GPT. Spowoduje to wyczyszczenie wszystkiego na dysku twardym lub. SSD. Następnie należy utworzyć małą 8-partycjonowaną partycję i oznaczyć ją „bios_grub”. Następnie tworzona jest partycja 100 MB fat32 oznaczona „EFI” i oznaczona jako „boot”. (Jest to nowoczesny i bardziej przejrzysty odpowiednik tego, co robił MBR, patrz tutaj w celach informacyjnych ).

  2. Opcjonalne: Zainstaluj dystrybucję Linuksa, która działa poprawnie w systemach GPT UEFI z USB. Nie wiem, które z nich robią. Zainstalowałem Chakra Linux, aby go wypróbować. Podczas instalacji pamiętaj o zamontowaniu 100 MB fat32 jako / boot / efi. Zrób resztę jak zwykle. Zostawiłem trochę niesformatowanego pokoju dla systemu Windows 8 (300 GB), potem utworzyłem zamianę Linuksa na 1 GB, utworzyłem sąsiadujące rozszerzenie ext4 (25 GB) i zamontowałem jako /. Po instalacji nie uruchomi się, ale naprawimy to z łatwością. Wykonaj ponownie cały krok, aby zainstalować więcej dystrybucji.

  3. Zainstaluj system Windows 8 w niesformatowanym miejscu, które pozostawiliśmy w poprzednim kroku. Automatycznie zidentyfikuje partycję systemową EFI, utworzy MSFTRES i NTFS, w którym się instaluje. Po instalacji możemy tylko uruchomić system Windows, ale naprawimy to później.

  4. Ubuntu naprawi to wszystko. Podczas instalacji wybierz 100 MB fat32 i zmień go na „użyj jako efi”. Utwórz ext4, zainstaluj Ubuntu. Po ponownym uruchomieniu komputera zaprezentowano mi działający GRUB2, który wykrywa system Ubuntu i Chakra Linux.

  5. Teraz skonfigurujemy GRUB2 do wykrywania systemu Windows. Jest to znany błąd, jednak obejście Rasmus Pedersen jest funkcjonalne. Uważaj na popełniony przez siebie błąd podczas pisania: To / etc / default / grub bez s zamiast / etc / defaults / grub. Pisząc „chainloader ($ {root}) / efi / Microsoft / Boot / bootmgfw.efi” napisałem / EFI / wielkimi literami dla pewności. Po wykonaniu tej czynności przedstawi nam działającego GRUB2 z działającym wpisem systemu Windows 8.

  6. GRUB2 nie wygląda bardzo ładnie przy tak wielu opcjach uruchamiania i nie jest w mojej preferowanej kolejności. Dlatego instaluję i używam grub-customizer w Ubuntu, jak pokazano tutaj . Skonfiguruję go tak, aby ukrył memtest, odzyskiwanie i stare jądra, i zmieniam jego kolejność, aby umieścić niestandardowy skrypt w systemie Windows na wierzchu. Gotowy.

gbag
źródło
bardzo miło, dzięki za ten post, jeszcze jedna dodatkowa rzecz: Chciałbym użyć oprogramowania RAID 0 jak na Windows 7 jak na Linuksa z 4 paracji. Wiele razy przechodziłem do konfiguracji RAID 0 w ramach opisanego „użycia technologii”, z wyjątkiem podwójne uruchamianie systemu Windows 7 na RAID 0. Czy ktoś ma z tym doświadczenie? dzięki za wszelkie informacje. pozdrowienia, Martin
Dziękuję bardzo za odpowiedź, podążyłem za tobą, ale. Po wykonaniu kroku 5 nie mogę uruchomić systemu Windows 8 z tym wpisem. Jestem pewien, że wpis jest prawidłowy, ponieważ wkrótce pojawiło się logo systemu Windows 8, ale potem nic się nie pojawi, a system automatycznie uruchomi się ponownie. Ponieważ zainstalowałem zarówno Windows 8, jak i Ubuntu w trybie uefi, w moim uefi mam zarówno uefi Ubuntu, jak i uefi. Przed zainstalowaniem Ubuntu menedżer rozruchu systemu Windows może uruchomić mnie w systemie Windows 8. Ale po tym wszystkim, co zrobiłem, to już nie działa. Daje mi ten sam błąd, jaki dostałem od wybrania windo
Ta odpowiedź była dla mnie bardzo pomocna jako podstawa do mojej instalacji.
davidtbernal
Niezły udział @gbag. Dla tych, którzy wybierają Ubuntu i GRUB2zamiast rEFInd, zgodnie z bugs.launchpad, błąd „Nie wykrywa wpisu rozruchu systemu Windows” został naprawiony w Ubuntu począwszy od 12.04.3 („Saucy” rel 3).
tuk0z
3

Dystrybucje Kubuntu i LinuxMint KDE działały dobrze dla mnie z GPT i EFI.

Kroki:

  1. Uruchom instalację systemu Windows 7/8 i skonfiguruj partycję HDD, automatycznie utworzy boot EFI, MS System Reserved, dla Windows 8 także partycję odzyskiwania. Zainstaluj system Windows.
  2. Zainstaluj pożądaną dystrybucję Linuksa z obsługą EFI. Wybierz ręczne partycjonowanie i aby zainstalować bootloader na partycji głównej „/”, pliki EFI Grub 2 zostaną automatycznie zainstalowane na partycji rozruchowej EFI, podobnie jak pliki systemu Windows.
  3. Zainstaluj REFInd i gotowe. rEFInd wykona zadanie i zaoferuje opcję wyboru żądanego systemu operacyjnego podczas uruchamiania komputera. Zainstaluj informacje rEFInd - http://www.rodsbooks.com/refind/installing.html . Przed instalacją rEFInd, musisz wybrać urządzenie rozruchowe na początku za pomocą specjalnego klucza BIOS, lub wchodząc w BIOS i umieszczając żądane urządzenie na pierwszym miejscu, uruchom Windows i skonfiguruj rEFInd z Windows. Upewnij się, że właściwa partycja EFI jest ustawiona jako domyślne urządzenie rozruchowe w systemie BIOS.

Ja osobiście wolę Kubuntu 12.10, prawdopodobnie Mageia 3 będzie miła, ale do wiosny 2013 jest długa droga.

Powodzenia.

Andrei
źródło