2014-06-07 08:29:42 +0000 2014-06-07 08:29:42 +0000
35
35

Wie erstelle ich eine EFI-Systempartition?

TL; DR Wie erstelle ich eine EFI-Systempartition von Grund auf? Wie lege ich die EFI-Firmware auf die Partition, sobald sie erstellt ist?

Lange Version

Ich habe einen Toshiba T430 Laptop. Ich habe es mit installiertem Windows 7 erhalten (aber ich glaube, es wurde ursprünglich mit Windows 8 ausgeliefert). Ich installierte Ubuntu darauf, löschte aber einige Partitionen auf der Platte, so dass ich am Ende Windows auslöschte und nur noch Ubuntu hatte. Unter den gelöschten Partitionen war auch die EFI-System-Partition. Ich entdeckte, dass Ubuntu jetzt im Legacy-Modus bootet (und nicht UEFI). Ich versuche, dieser Anleitung zur Konvertierung meiner Ubuntu-Installation von Legacy nach UEFI zu folgen. Das Problem - da es keine EFI-Partition gibt, wenn ich aus dem BIOS wähle, mit UEFI zu booten, kann ich nicht booten. Das gilt nicht nur für die Festplatte, sondern auch für usb und DVD. Ich denke, das ist logisch - es erwartet eine EFI-Partition, und da es diese nicht finden kann, kann es nicht weiter booten, weder von Festplatte noch von DVD. Wie kann ich also die EFI-Partition neu erstellen?

Die obige Anleitung sagt:

Erstellen einer EFI-Partition

Wenn Sie Ihre Festplatte im Ubuntu-Installationsprogramm manuell partitionieren, müssen Sie sicherstellen, dass Sie eine EFI-Partition eingerichtet haben.

  1. Wenn Ihre Festplatte bereits eine EFI-Partition enthält (z.B. wenn auf Ihrem Computer Windows8 vorinstalliert war), kann diese auch für Ubuntu verwendet werden. Formatieren Sie sie nicht. Es wird dringend empfohlen, nur 1 EFI-Partition pro Platte einzurichten:

  2. Eine EFI-Partition kann mit einer neueren Version von GParted erstellt werden (die Gparted-Version, die in der 12.04-Platte enthalten ist, ist OK) und muß die folgenden Attribute haben:

Ich hatte einige Probleme beim Erstellen dieser Partition:

  • Ich starte von einer Live-Ubuntu-DVD, öffne GParted, erstelle eine 200MB-Partition und formatiere sie in FAT32.
  • In GParted kann ich den Mount-Punkt nicht setzen und kann daher auch nicht das Bootflag setzen.
  • Ich habe den Mount-Punkt in /etc/fstab nicht gesetzt, da es eine Live-CD ist und die fstab ganz anders aussah als das, was ich im Vergleich zu einem normalen Bootvorgang erwartet hatte. Wie auch immer, ich wusste einfach nicht, welche Werte ich setzen sollte.

  • Ich bootete erneut über die Live-DVD und entschied mich dann für die Installation von Ubuntu. Ich erstellte dann eine Partition mit den genannten Kriterien - Mount-Punkt, 200MB, FAT32, Boot-Flag.

Ich habe jedoch weiterhin dieses Problem, und ich nehme an, es liegt daran, dass auf dieser Partition keine EFI-Firmware vorhanden ist, es ist nur eine leere Partition, die für EFI-Firmware geeignet ist.

Also noch einmal, wie erstelle ich eine EFI-Partition, die die EFI-Software enthält, so dass der Laptop wieder im UEFI-Modus booten kann?

LÖSUNG Ich danke Ihnen beiden für die Antworten. Was ich getan habe, war, Windows 8.1 von Grund auf zu installieren, indem ich die gesamte Platte formatiert und dann (diesmal richtig) Ubuntu daneben installiert habe. Dies sind jetzt meine Partitionen:

Während des Setups von Win 8 wurden, sobald ich alle vorhandenen Partitionen gelöscht und Windows die Platte neu formatieren ließ, neben der Hauptpartition für die Installation automatisch drei zusätzliche Partitionen erstellt, nämlich 1, 2, 3. Nun, nachdem ich ein richtiges ESP hatte, konnte ich sowohl von Festplatte als auch von DVD im UEFI-Modus booten.

Sie sagen, daß das ESP standardmäßig keine Informationen speichert, aber ich vermute, daß es, wenn ein Betriebssystem installiert wird, einige Informationen dort ablegt. Ich schätze also, mein Fall war der folgende: Ich hatte es ausgelöscht, und obwohl ich es neu erstellt hatte, war es nicht mit Informationen gefüllt, da die Erstellung des ESP erst nach der Installation eines Betriebssystems erfolgte. Ich habe die Ubuntu-Installation verloren (keine große Sache, es war sowieso eine Neuinstallation), aber ich vermute, daß ich, um sie zu retten, dem Rat von grawity hätte folgen sollen. Ich hatte zwar keine Zeit, aber zum Glück ist jetzt alles in Ordnung.

Antworten (4)

39
39
39
2014-06-07 13:27:45 +0000

Erstens setzen Sie den Einhängepunkt nicht in GParted; das geschieht manuell (und vorübergehend) über den Befehl mount oder dauerhaft durch Bearbeiten von /etc/fstab. Zweitens ist eine EFI-System-Partition (ESP) einfach eine FAT-Partition mit einem bestimmten Typcode (nämlich C12A7328-F81F-11D2-BA4B-00A0C93EC93B auf GPT-Platten). Beachten Sie, dass der Mount-Punkt in /etc/fstab nicht Teil der Definition des ESP ist; es ist unter Linux üblich (aber nicht erforderlich), auf das ESP zuzugreifen, indem man es bei /boot/efi mountet, typischerweise über einen /etc/fstab-Eintrag. Wie Sie den Typencode einstellen, ist von Programm zu Programm verschieden:

  • In gdisk setzen Sie den Typencode auf EF00. (gdisk verwendet Zwei-Byte-Typcodes, die sich zu den echten Typcodes auf der Platte ausdehnen; “EF00” ist nur ein Mnemonik für “C12A7328-F81F-11D2-BA4B-00A0C93EC93B”.)
  • In GParted oder parted setzen Sie das “Boot-Flag”. Beachten Sie jedoch, dass dies nur bei GPT-Platten funktioniert; Sie können den ESP-Typencode bei MBR-Platten mit diesen Programmen nicht setzen. (Das ist normalerweise keine große Sache, da EFI-basierte Computer normalerweise von GPT-Platten booten)
  • Im Ubuntu-Installationsprogramm identifizieren Sie die Partition als “EFI-Boot-Partition”. Es setzt dann den Typcode und richtet /etc/fstab entsprechend ein.
  • In neueren Versionen von Linux fdisk setzen Sie den Partitionstyp anhand seiner Nummer (1 für “EFI-System” auf GPT-Platten oder 0xEF auf MBR-Platten) oder durch Eingabe des vollständigen Typcodes auf GPT-Platten.

Drittens enthält das ESP keine Firmware - Firmware ist per Definition in Chips auf der Hauptplatine gespeichert. Daher ist Ihr Bemühen, die EFI-Firmware auf dem ESP zu installieren, eine aussichtslose Suche. (Es gibt zwei Ausnahmen von dieser Regel. Erstens könnten Sie eine Firmware-Datei auf dem ESP speichern, um die Firmware auf Ihrem Computer zu aktualisieren. Dies ist jedoch nur ein vorübergehender Haltebereich. Zweitens, der DUET oder Clover Bootloader, das EFI wird als reguläres Programm geladen, typischerweise vom ESP. Diese Tools sind jedoch BIOS-Bootloader, die es BIOS-Computern ermöglichen, so zu booten, als ob sie EFI-Maschinen wären; sie werden nicht normalerweise auf Computern mit EFI-Firmware verwendet, von der Sie behaupten, dass Ihr Computer sie hat. Technisch gesehen sind weder DUET noch Clover Firmware; es sind BIOS-Bootloader, die die gleiche Aufgabe wie EFI erfüllen)

Abschließend kann ich mir eine Reihe möglicher Ursachen für Ihr Problem vorstellen, aber ohne weitere Informationen müsste ich ein halbes Buch schreiben, um sie alle zu behandeln. Ich empfehle Ihnen, das Boot Info Script auf dem Computer auszuführen. Dies wird eine Datei namens RESULTS.txt erzeugen. Senden Sie sie an a pastebin site und senden Sie sie mit der URL zu Ihrem Dokument zurück. Dadurch erhalten Sie harte Daten über Ihre Konfiguration, was die Bandbreite der möglichen Ursachen Ihres Problems stark reduziert.

11
11
11
2014-06-07 13:25:13 +0000

Die EFI-Partition enthält keine Firmware (die in einem Chip auf der Hauptplatine gespeichert ist); sie enthält die Bootloader für installierte Betriebssysteme. Es ist im Grunde die EFI-Alternative, den Bootloader in den 0. Sektor der Platte zu legen, wie es bei BIOS-PCs der Fall war.

Dies bedeutet, dass eine solche Partition, sobald Sie eine solche haben, bei der Installation des Betriebssystems automatisch gefüllt werden sollte. (Es ist allerdings sehr wahrscheinlich, daß die Installationsplatte selbst auch im EFI-Modus gebootet werden muß, sonst macht es keine Mühe, den UEFI-Boot einzurichten… in der Tat können bestimmte Teile des Setups nicht einmal vom BIOS-Modus aus durchgeführt werden)

Wenn Sie bereits Ubuntu installiert haben, müssen Sie:

  1. die UEFI-Version von GRUB installieren; ich glaube sie ist im Paket grub-efi-amd64-signed enthalten.

  2. Stellen Sie sicher, dass GRUB sich selbst als \EFI\Boot\bootx64.efi in der EFI-Systempartition installiert hat. (Ich verwende hier die EFI-Pfadsyntax; wenn Sie die Partition unter Linux unter /boot mounten, wäre es /boot/EFI/Boot/bootx64.efi)

  3. Neustart. Versuchen Sie, irgendeine Art von EFI-Modus im Boot-Menü Ihrer Firmware auszuwählen (EFI-Firmware hat ein eigenes Boot-Menü, sogar noch vor GRUB).

  4. Prüfen Sie, ob dmesg | grep "efi:" etwas anzeigt, um zu bestätigen, dass Sie sich im EFI-Modus befinden.

2
2
2
2017-03-10 02:05:31 +0000

Erstellen Sie zwei Dateien mit Notizblock und speichern Sie sie auf Ihrem USB-Windows-Installationslaufwerk. SaveAs: CreatePartitions-UEFI.txt

select disk 0  
clean  
convert gpt  
rem == 1. System Partition =====================  
create partition efi size=210  
format fs=fat32 quick label=”SYSTEM”  
active  
rem == 2. Microsoft Reserved (MSR) partition ======  
create partition msr size=16  
rem == 3. Windows partition ===================  
create partition primary size=xxxxxx   
format fs=ntfs quick label=”Windows”   
assign letter=”W”  
rem == 4. Recovery tools partition ================  
create partition primary size=460  
format fs=ntfs quick label=”Recovery”  
assign letter=:R”  
list volume

Erstellen Sie eine weitere Textdatei mit Notepad: SaveAs: diskpart-UEFI.txt

diskpart /s D:\CreatePartitions-UEFI.txt   

REM where D:/ is the usb drive. This command runs the text file to install the partitions.

Wenn Sie MBR verwenden, lautet der Befehl, mbr zu konvertieren.

Um die Größe der Windows-Partition zu erhalten, multiplizieren Sie Ihre HD-Größe mit 1024, eine 100-Gigabyte-Festplatte mal 1024 entspricht 102400 minus 210 (efi-Größe) minus 16 (msr-Größe) minus 460 (reservierte Größe) entspricht der Größe, die Sie in die Windows-Partitionsgröße eingeben werden. (xxxxxx)

Sie können die Größe der Partitionen über das Terminal (Eingabeaufforderung) cd /d D ändern: > notepad CreatePartitions-UEFI.txt

Während Sie sich im USB-Laufwerk befinden, öffnen Sie mit notepad diskpart-UEFI.txt und lassen Sie die Datei offen oder schreiben Sie den Befehl auf, damit Sie keinen Fehler machen. Sobald Sie die Größe der Partitionen nach Ihren Wünschen geändert haben, schließen Sie sie, dann cd /d x:/Sources und führen Sie das Verzeichnis diskpart /s D:\CreatePartitions-URFI.txt. aus, da der letzte Befehl Ihnen die Partitionen anzeigt, wenn Sie zufrieden sind, beenden Sie > Computer ausschalten > neu starten > installieren

-2
-2
-2
2018-11-09 19:31:40 +0000

Verwenden Sie gnome-disks , Paket “gnome-disk-utility”, es ist super praktisch.