Ist es möglich, eine EFI(ESP)-Partition zu installieren, nachdem Ubuntu und Parrot installiert wurden?

Ist es möglich, eine EFI(ESP)-Partition zu installieren, nachdem Ubuntu und Parrot installiert wurden?

Es gibt einen Computer, auf dem Ubuntu und Parrot Security OS installiert sind. Das ist alles in Ordnung und läuft reibungslos mit Grub. Es kann korrekt booten.

Als wir Ubuntu installierten, formatierten wir die gesamte Festplatte und vergaßen, EFI zu installieren. Als wir versuchten, rEFInd zu installieren, zeigte sich, dass EFI auf dem Computer vollständig fehlte.

Die Frage ist: Wie können wir EFI installieren, nachdem wir alle Betriebssysteme installiert haben? Muss ich Ubuntu erneut installieren, um es darauf zu bekommen?

Antwort1

Dies ist sicherlich möglich, die eigentliche Frage ist jedoch, ob es weniger Aufwand bedeutet.

ESPist nur eine kleine Partition (512 MB ist eine gute Größe) mit einem FAT-Dateisystem und einem speziellen Typ.

  • Da Sie es erstellen müssen, benötigen Sie freien Speicherplatz dafür und dafür müssen Sie möglicherweise die Größe einer Ihrer Partitionen ändernund das darauf befindliche Dateisystemmit Werkzeug wie gparted.

  • Wenn Sie bereits über den erforderlichen Speicherplatz verfügen, müssen Sie eine neue Partition mit dem entsprechenden Typ erstellen. gpartedSuchen Sie nach „esp flag“, das heißt „EFI System“ fdisk(oder etwas Ähnliches, wenn Sie MBR verwenden). Dadurch wird eine EFI-Partition zu einer EFI-Partition.

  • Erstellen Sie das Dateisystem mitmkfs.fat -F32 /dev/sdx

  • Holen Sie sich die UUID der Partition mit blkid, legen Sie deren Bezeichnung oder ähnliches fest

  • Erstellen Sie wie folgt einen neuen Eintrag in /etc/fstab für die neue Partition (und stellen Sie sicher, dass der Einhängepunkt vorhanden ist):

UUID=xxxx-xxxx   /boot/efi    vfat    defaults    0 2

Alternativ können Sie /efi verwenden oder die Bereitstellung an /boot binden, um den Pfad /efi/EFI zu vermeiden.

  • Installieren Sie rEFInd oder GRUB für EFI auf dieser Partition. Möglicherweise müssen Sie auf dieser Partition das Verzeichnis /EFI erstellen

Dassollengeben Ihnen ein funktionierendes ESP.
Mehr und besser können Sie hier lesen:https://wiki.archlinux.org/index.php/EFI_system_partition#Erstellen_der_Partition

Antwort2

Ich habe einmal etwas Ähnliches gemacht. Ich habe die genauen Schritte nicht aufgeschrieben, aber es war nicht allzu schwer, das zu ändern. (Ich brauchte zufällig auch rEFInd, aber es sollte auch ohne funktionieren.) Es lief ungefähr so ​​ab:

  1. Installieren Sie die gleiche Version von Ubuntu „ordnungsgemäß“ auf einer temporären GPT-formatierten Festplatte oder einer VM, die als UEFI-System mit einer virtuellen GPT-Festplatte als „Spender“-Dummy-Betriebssystem eingerichtet ist.
  2. Wenn Ihr Hauptbetriebssystem nach der Installation aktualisiert wurde, aktualisieren Sie auch die Dummy-Installation.
  3. Fahren Sie das Dummy-Betriebssystem herunter.
  4. Kopieren Sie die EFI-Partition mithilfe eines bootfähigen Wiederherstellungsmediums oder eines anderen bootfähigen Betriebssystems vom Dummy auf Ihren echten Computer.
    1. Hierzu kann eine Ubuntu-Boot-DVD verwendet werden, da diese mit GParted mitgeliefert wird.
    2. Wenn Sie dies über eine VM tun, booten Sie die VM auf ein Wiederherstellungs-ISO oder die Ubuntu-Installations-ISO-Datei, die als virtuelle Festplatte gemountet ist. Beachten Sie, dass Sie Ihre echte Betriebssystemfestplatte auch als reine VMDK innerhalb der VM mounten können (wenn Sie VirtualBox verwenden, müssen Sie die vboxmanageCLI verwenden, um sie zu erstellen, und beachten Sie, dass die Zuordnung bei Neustarts des Host-Betriebssystems nicht gültig ist). Auf diese Weise können Sie Ihre „Dummy“-EFI-Partition direkt auf Ihre echte Festplatte kopieren, was eine echte Zeitersparnis ist, wenn Sie dies in einer VM tun. (Sie können auf diese Weise sogar Ihr echtes Betriebssystem in der VM booten. Linux ist intelligent genug, um keine Treiber für Hardware zu laden, die vorübergehend nicht existiert, nicht einmal proprietäre Anzeigetreiber. Der Kernel hat bereits grundlegende Open-Source-Treiber für die Integration von VirtualBox und VMware und lädt diese automatisch. Tatsächlich installiere ich Ubuntu normalerweise auf diese Weise auf echten Festplatten, um es später auf andere Maschinen zu übertragen, alles über die VM.)
  5. Schaffen Sie vor dem Kopieren der EFI-Partition Platz für sie als erste Partition, indem Sie zunächst die vorhandene Partition verkleinern und/oder aus dem Weg räumen. (Mit GParted geht das ganz einfach.) Die neue EFI-Partition wird nicht sda1 sein (wie es bei einer korrekten Erstinstallation der Fall wäre), aber wenn ich mich recht erinnere, ist das für EFI, Grub, rEFInd usw. in Ordnung.
  6. Ordnen Sie die Partition in der Datei /etc/fstab der Installation /boot/efi zu.
  7. Jetzt haben Sie zwei Möglichkeiten, ein bootfähiges System zu erhalten (auch dies können Sie auf Bare Metal oder über eine VM mit einer per VMDK zugeordneten realen Festplatte tun):
    1. Verwenden Sie ein Boot-Reparaturtool wieBoot-Reparaturum alles in einen bootfähigen Zustand zu bringen, normalerweise durch bloßes Drücken einer Taste.
      • Beachten Sie, dass Sie Boot Repair von einem Betriebssystem im UEFI-Modus ausführen müssen, egal ob Bare Metal oder VM.
    2. rEFInd sollte auch mit dieser Konfiguration funktionieren. Wenn dies jedoch nicht der Fall ist und Sie rEFInd wirklich benötigen, müssen Sie möglicherweise zuerst den vorherigen Schritt ausführen.
  8. Wenn Sie Grub überspringen und „reines EFI“ verwenden möchten, gibt es auch Möglichkeiten, dies zu umgehen, die jedoch den Rahmen dieser Antwort (und meines Wissens) sprengen würden.

Ich bin neugierig, warum Sie rEFInd verwenden möchten. Es ist ein erstaunliches Stück Code und praktisch erforderlich, um mit MacOS Dual- oder Triple-Boot zu steuern, aber wenn es nur Dual-Boot mit Linux/Windows ist, habe ich oft festgestellt, dass Grub einfacher, aber hässlicher ist. Es gibt weniger zu basteln. Außerdem ist rEFInd nicht „einstellen und vergessen“, es wird gelegentlich überschrieben und muss neu installiert werden, was ein wenig lästig sein kann, weil typische *nix/Windows-Sysadmin-Kenntnisse nicht auf rEFInd übertragen werden können, und es passiert so selten, dass Sie jedes Mal neu googeln müssen, wie es geht. (Oder schreiben Sie es auf und versuchen Sie sich dann zu erinnern, wo diese Notiz ist.) Außerdem erstellt es manchmal „hilfreich“ Symbole für bestimmte Kernelversionen, die schnell irrelevant werden. Ich glaube, es gibt eine dokumentierte Möglichkeit, dieses Verhalten zu verhindern oder sie zumindest nachträglich zu löschen, aber ich habe aufgehört, sie zu verwenden, also erinnere ich mich nicht mehr daran. Das ist jedoch nur meine Erfahrung.

Viel Glück!

verwandte Informationen