Grundlegendes zu UEFI und GPT: Installieren von Windows und Kubuntu auf demselben Laufwerk

Erinnern Sie sich an jene Tage, als das BIOS 16-Bit mit einem Adressraum von 1 MB war und alle Informationen über die Lader in den MBR geschrieben wurden? Flexiblere Technologien wurden seit langem ersetzt: UEFI (BIOS-Ersatz) und GPT (MBR-Ersatz).

Hintergrund: Vor kurzem musste ich 2 Systeme auf meinem Home-Desktop installieren, um zwischen der Umgebung zu unterscheiden. Kubuntu für die Entwicklung von Ruby on Rails (weil ich remote arbeite) und Windows für alle Arten von Spielzeug in meiner Freizeit. Ich möchte darauf hinweisen, dass es vor einigen Jahren ganz einfach war: Eine Partition für Windows und eine Partition für Linux, der Bootloader wurde in den MBR geschrieben. Die Technologie steht jedoch nicht still und es stellte sich heraus, dass sich das Dual-Boot-Setup nun etwas geändert hat.

Also fangen wir an.

Terminologie


UEFI (Unified Extensible Firmware Interface) wurde von Intel als Ersatz für BIOS (Basic Input Output System) entwickelt. Im Gegensatz zum 16-Bit-BIOS arbeitet UEFI im 32- oder 64-Bit-Modus, sodass Sie für komplexe Prozesse viel mehr Speicher verwenden können. Darüber hinaus sieht UEFI gut aus und es gibt Mausunterstützung.
Aussehen:
Bild


GPT (GUID Partition Table) ist Teil der UEFI-Spezifikation. UEFI verwendet GPT genauso wie das BIOS MBR .
Der Hauptunterschied zwischen GPT und MBR ist meiner Meinung nach:
  • Anzahl der Partitionen : MBR unterstützt nur 4 Partitionen. Sie können mehr tun, aber nur über die erweiterte Partition, die nur ein Haufen von Einschränkungen ist. GPT unterstützt bis zu 128 Partitionen.
  • Festplattengröße : MBR unterstützt Festplatten mit bis zu 2 TB, während GPT bis zu 9,4 Zettabyte (= 9,4 × 10 ^ 21 Byte oder bedingt 1000 TB) unterstützt.
  • Bootreihenfolge : Vorher hat das BIOS den MBR geladen und er enthielt die Adressen der Bootloader für jede Partition der Festplatte. Jetzt liest UEFI GPT, findet in der Tabelle alle Partitionen des Typs efi (sie enthalten Loader) und lädt sie in den Speicher. Wir werden dies später anhand eines Beispiels analysieren.


Was machen wir:


Installieren Sie das folgende Betriebssystem auf einer leeren 1-TB-Festplatte.
  • Windows 8.1 x64 . Windows unterstützt das Booten von GPT, beginnend mit Windows 8 für 32-Bit-Architektur und mit Windows Server 2003 und Windows Vista für 64-Bit ( Source ).
  • Kubuntu 15.04 . Theoretisch ist jede Distribution geeignet, die Grub2 unterstützt. Ich persönlich bevorzuge Kubuntu.

NB: Motherboard unterstützt UEFI

Festplattenausfall


Installieren Sie zunächst Windows 8, weil Sie wird automatisch GPT verwenden.
Die Aufteilung sieht folgendermaßen aus (Entschuldigung für das Kurvenbild):

Bild

Windows erstellt standardmäßig 4 Partitionen:
  1. Wiederherstellung (300 MB). Offensichtlich wird es verwendet, um das System wiederherzustellen. Lass es so wie es ist.
  2. EFI-Partition (100 MB). Es ist als Systemtyp gekennzeichnet (Microsoft nennt Dinge nicht gerne mit ihren technischen Namen). Eigentlich sind hier Lader geschrieben.
  3. MSR (128 MB, Microsoft Reserved Partition ). Es bleibt mir ein Rätsel, warum es gebraucht wird. Es gibt dort keine Daten, nur einen leeren Ort, der für einige dunkle Zwecke in der Zukunft reserviert ist.
  4. Der Hauptteil. Wir teilen es in 3: 200 Gigabyte für Windows, 500 Gigabyte für die Datenpartition und den Rest des Speicherplatzes lassen wir deaktiviert (wir formatieren ihn später bei der Installation von Kubuntu).


Wir überspringen die Installation von Windows selbst, weil alles ist standard und klar darin.

Booten Sie jetzt von USB zu Kubuntu Live.

Überprüfen Sie den EFI-Abschnitt:
kubuntu@kubuntu:~$ efibootmgr
BootCurrent: 0003
Timeout: 0 seconds
BootOrder: 0000,0003,0001
Boot0000* Windows Boot Manager
Boot0001* Hard Drive
Boot0003* UEFI: JetFlashTranscend 16GB

Boot0000 - Windows-Bootloader
Boot0001 - Standard-Bootloader
Boot0003 - Kubuntu Live-Flash-Laufwerk
Bitte beachten Sie, dass die Liste der Bootloader nicht an dieselbe physische Festplatte gebunden ist wie im MBR. Es ist im NVRAM gespeichert.

Wir können auch sofort sehen, was sich in diesem Abschnitt befindet, indem wir es montieren:
kubuntu@kubuntu:~$ sudo mkdir /media/efi
kubuntu@kubuntu:~$ sudo mount /dev/sda2 /media/efi

Die folgenden Dateien werden dort sein:
EFI
|--Boot
|    |--bootx64.efi # дефолтный загрузчик
|--Microsoft
     |--Boot
         |--bootmgfw.efi # основной виндовый загрузчик
         |--# много других файлов

Stellen Sie sicher, dass alles in Ordnung ist. Jetzt partitionieren wir die Festplatte weiter (über den KDE-Partitionsmanager).

Bild

Die ersten fünf Abschnitte bleiben gleich. Beachten Sie, wie Kubuntu die Abschnitte definiert hat:
  • sda2 ist als FAT32 definiert. Das ist fast wahr, weil Ein Dateisystem vom EFI-Typ basiert auf FAT, nur mit strengen Spezifikationen.
  • sda3 (MSR) wurde nicht entschieden, t. Es gibt kein solches Dateisystem.


Wir müssen nur die Partition für Kubuntu in ext4 formatieren und die Partition für den Swap auswählen.

Ein paar Worte zum Tausch. Es wird empfohlen , beim Swap von SQRT (RAM) zu 2xRAM zuzuweisen. Weil Ich habe 16 GB RAM, dann brauche ich mindestens 4 GB Swap. Obwohl ich mir kaum vorstellen kann, in welchen Situationen es zum Einsatz kommen wird: Ich übersetze den Desktop nicht in den Ruhezustand und verwende keine sehr schweren Programme, die mehr als 16 Gigs verbrauchen.

PS Beim Formatieren einer Partition im Swap-Partitions-Manager können Fehler auftreten, die darauf zurückzuführen sind, dass Kubuntu automatisch eine Swap-Partition bereitstellt. Diese Fehler wirken sich jedoch nicht auf das Ergebnis aus.

Also die endgültige Panne:

Bild

Jetzt das Wichtigste für den richtigen Dual Boot'a. Bei der Installation von Kubuntu ist es wichtig zu wählen, wo der Bootloader installiert werden soll:

Bild

Wir verweisen natürlich auf die EFI-Sektion.

Nachdem die Installation von Kubuntu abgeschlossen ist, überprüfen wir im System, welche Dateien auf der efi-Partition angezeigt wurden (Sie müssen sie nicht mehr mounten):
user@kubuntu:~$ sudo ls /boot/efi/EFI
Boot  Microsoft  ubuntu
user@kubuntu:~$ sudo ls /boot/efi/EFI/ubuntu
grub.cfg  grubx64.efi  MokManager.efi  shimx64.efi

Mal sehen, wie die Liste der Bootloader jetzt aussieht:
user@kubuntu:~$ efibootmgr -v
BootCurrent: 0002
Timeout: 0 seconds
BootOrder: 0002,0000,0003,0001
Boot0000* Windows Boot Manager  HD(2,96800,32000,c4f37e07-0441-4967-a1ac-75fb5a36e4f3)File(\EFI\Microsoft\Boot\bootmgfw.efi)
Boot0001* Hard Drive    BIOS(2,0,00)
Boot0002* ubuntu        HD(2,96800,32000,c4f37e07-0441-4967-a1ac-75fb5a36e4f3)File(\EFI\ubuntu\shimx64.efi)
Boot0003* ubuntu        HD(2,96800,32000,c4f37e07-0441-4967-a1ac-75fb5a36e4f3)File(EFI\Ubuntu\grubx64.efi)

So sieht es beim Booten aus:

Bild

Und diese Bootloader sind ab sofort über UEFI erhältlich (im alten BIOS wäre dies nicht möglich gewesen - es gab nur eine Festplattenauswahl, er wusste nur nicht, welche Bootloader es waren):

Bild

Und schließlich: Dual-Boot korrekt aktivieren funktionierte, ist es in Windows notwendig, den Schnellstart zu deaktivieren. Dies ist eine so schlechte Funktion, die zu Datenverlust führen kann.
Erklärung
Bild

Wenn Sie Ihren Computer ausschalten, speichert Windows die Dateistruktur von NTFS-Partitionen in einer Datei (anscheinend, weil das Lesen einer einzelnen Datei schneller ist als das Scannen vieler verschiedener Dateien). Wenn Sie die Datei über Linux auf eine NTFS-Partition schreiben und dann in Windows booten, wird die Datei von Windows einfach nicht angezeigt. Quelle

Wenn Sie den Computer über Windows ausschalten und dann versuchen, Linux zu starten, wird er aufgrund des NTFS-Fehlers einfach nicht gestartet. Quelle

Jetzt auch beliebt: