Windows 10 EFI-Partition reparieren/wiederherstellen

Es kann unter Umständen mal passieren, dass die EFI-Partition – auch ESP (EFI-System-Partition) genannt – fehlerhaft ist und sie dadurch Ihr System nicht mehr starten könnten!

EFI-Partition fehlerhaft.

Bei normalen Clients (Keine Virtualisierungsumgebung! ) erscheint dann lediglich der Hinweis:

Operating System not found” oder ähnlich.

Ich habe deswegen extra mal das Szenario nachgebaut in einer meiner virtuellen Maschinen. Ich habe dort einfach die EFI-Partition gelöscht. Ich weiß natürlich, dass sich unter normalen Umständen nicht einfach so die EFI-Partition löscht, klar, aber das war für mich halt der schnellste weg den Fehler zu verursachen.

Normalerweise sollte es eher so sein, dass die Partition noch vorhanden ist, aber der Bootloader (Startprogramm von Windows) nicht mehr auffindbar ist, warum auch immer. Es gibt verschiedene Wege die zu einem solchen Problem führen.

Microsoft selbst gibt folgende Partitionen als Standard und auch als empfohlen für die folgenden Firmwarearten an:

Empfohlenes Windows Partitionslayout von Microsoft für BIOS-basierte Rechner.
Empfohlenes Windows Partitionslayout von Microsoft für UEFI-basierte Rechner.

Voraussetzung:

Zum Reparieren des nicht mehr startenden Systems, benötigen Sie entweder eine Windows 10 DVD mit der richtigen Architektur für Ihr System (32Bit oder 64Bit) oder ein WinPE das sie ebenfalls von einem USB-Stick oder über PXE laden könnten.

Ich mache Ihnen hier auch nur Beispiele für Windows 10 Installationen, da die älteren Systeme obsolet sind.

Systemdatenträger mittels “Diskpart”  auf die Reparatur vorbereiten

Sollten Sie ein WinPE gebootet haben, dann werden sie sowieso in der Eingabeaufforderung landen, für Leute die das Windows ISO benutzen; drückt einfach UMSCHALT+F10. Dadurch öffnet sich auch dort eine Eingabeaufforderung.

Gebt nun

diskpart

ein.

Da ich natürlich nicht weiß, wie viele Festplatten jeder von Euch im Rechner verbaut hat und auf welcher davon Ihr Windows installiert habt, ist ein gewisses Mitdenken Ihrerseits schon erforderlich. 🙂

Lasst Euch erst einmal alle Platten anzeigen mit:

list disk
Diskpart List Disk

Das Bild dient nur als Beispiel, damit ich Euch ein System mit mehreren Festplatten zeigen konnte. Im weiteren Verlauf werde ich Euch das aber anhand meiner virtuellen Maschine demonstrieren.

Normalerweise befindet sich Euer Windows und auch sonstige Systempartitionen immer auf dem Datenträger 0. Ich sage extra normalerweise, da dies nicht immer der Fall ist. Einen Hinweis auf welcher Festplatte sich Eure Installation versteckt, bekommt Ihr dadurch, das Windows-Installationen im UEFI Modus immer auf einem GPT Datenträger vollzogen werden müssen. Daher scheiden alle Datenträger aus, die keinen Stern bei GPT haben. Mein Beispielbild wäre hier nicht aussagekräftig, da alle Platten im GPT Format sind. Dumm gelaufen 😀

In diesem Fall lassen wir uns einfach mal alle Partitionen anzeigen. Dafür müssen wir aber zuerst den Datenträger 0 auswählen.

Abkürzungen (Ihr müsst diese nicht ausschreiben! Ich zeige euch nur, was diese bedeuten):

  • sel = select
  • par = partition
  • vol = volume

Tippt dafür folgende Befehle Zeile für Zeile ein:

sel disk 0
list par
Diskpart List Partition

Möglichkeit 1: Die EFI-Partition existiert noch!

Unsere EFI-Partition (Liegt immer im Dateisystem: “FAT32” vor) ist die Partition 4 auf Datenträger 0 mit der Mindestgröße von 100MB.

Verwechseln Sie dies bitte nicht mit der Systempartition bei Clients mit der Mindestgröße von 100MB, die im BIOS (MBR) Modus installiert wurden! Diese wäre außerdem mit dem Dateisystem “NTFS” versehen.

Das dies außerdem der Systemdatenträger sein muss, erkennen sie an den anderen Partitionen wie zum Beispiel die Wiederherstellungspartition oder die MSR-Partition (Microsoft-Reserved). Natürlich aber auch an der Größe der primären Partition, denn sie als Nutzer Ihres eigenen Rechners wissen ja am besten, auf welche Platte Sie Windows installiert haben und wie groß diese ist.

Damit wir das System reparieren können, müssen wir dieser Partition vorübergehend einen Laufwerksbuchstaben zuweisen. Bei einem späteren Neustart wird dieser automatisch wieder entfernt. Sie müssen natürlich die Zahl verwenden, die Ihrer EFI-Partition entspricht. Die 4 müssen Sie gegen Ihren Wert tauschen! Normalerweise dürfte das bei den meisten die Partition 1 sein.

Tippt dafür folgende Befehle Zeile für Zeile ein:

sel par 4
assign letter="z"
exit

Sprungmarke: Weiterer abschließender Schritt.

Möglichkeit 2: Die EFI-Partition existiert nicht mehr!

Wenn Sie keine System Partition auf dem Datenträger 0 finden können und auch auf allen anderen Datenträgern in Ihrem System nicht, dann können Sie diese einfach neu anlegen lassen. Aber Vorsicht! Diese Möglichkeit nur durchgehen, wenn sie nur ein einziges Betriebssystem auf ihrem gesamten System installiert haben!

Da wir über

sel disk 0 
list par

keine Systempartition finden konnten, schauen wir erst einmal wie viel Platz überhaupt noch zur Verfügung steht.

Tippen sie dafür nochmal folgendes ein:

list disk
Diskpart – Verfügbarer ungenutzter Speicherplatz.

Wie wir hier sehen können sind 199MB ungenutzt! Diese könnten wir direkt verwenden, aber was machen wir, wenn dort 0MB steht? Denn dann müssten wir erst Platz schaffen. Daher gibt es auch hier zwei Möglichkeiten.

Unterpunkt – Möglichkeit 2.1: Speicherplatz freigeben

Um Speicherplatz beispielsweise der Windows-Partition zu nutzen, müssen wir diesen dem Volume entlocken.

sel disk 0 
list vol
Diskpart List Volume

Unser Volume 1 ist hier die Windows-Partition mit dem Buchstaben C:\ wie das meistens der Fall ist. Um dieser Partition ein paar MB zu entlocken tippen wir:

sel vol 1

EFI-Partitionen sollten mindestens immer 100MB groß sein. Wenn Sie bereits beispielsweise 50MB ungenutzten freien Speicherplatz haben, dann könnten Sie den Befehl

shrink minimum=50

nutzen um die 100MB voll zu machen. Dies ist jedoch davon abhängig wo genau der freie ungenutzte Speicherplatz liegt. Wenn dieser zwischen zwei Partitionen liegt, dann können sie diese 50MB NICHT nutzen. Das merken Sie spätestens, wenn Ihnen 100MB freier Platz angezeigt werden, beim Erstellen der EFI-Partition aber eine Fehlermeldung präsentiert wird, dass dies nicht möglich sei.

Dieser freie Speicherplatz kann genutzt werden, da dieser am Ende der Windows Partition ist. Durch das Verkleinern der Windows Partition wird der neue verfügbare Platz immer am Ende hinzugefügt.
Hier ist die Nutzung der bereits vorhandenen 50MB Speicherplatzes nicht möglich, da dieser zwischen zwei Partitionen liegt.

Es wäre hier dann erforderlich, zusätzlich 100MB freigeben zu lassen (Bild 2) oder eben nochmals 50MB (Bild 1). In diesem Falle wäre es eventuell eine Überlegung wert, vor dieser Aktion hier mittels beispielsweise des “Acronis Disk Director” oder mit dem “AOMEI Partition Assistant” Programms, den Platz vorher umverteilen zu lassen und Partitionen so zu erweitern, dass die Lücken geschlossen werden. Das obliegt aber Ihnen. Und da diese Programme auch nicht kostenlos sind, hat die auch nicht jeder. Zwingend erforderlich wäre dies jedoch nicht!

Mit dem Diskpart-Tool ist das nämlich meines Wissens nach nicht möglich.

Wenn kein ungenutzter Speicherplatz vorhanden sein sollte, dann schreiben sie statt der 50 eine 100!

Nun haben wir den benötigen Platz zur Verfügung.

Unterpunkt – Möglichkeit 2.2: Partition neu anlegen lassen

Da nun 100MB frei sind vergewissert euch mittels des Befehls:

list disk

Das der Systemdatenträger noch ausgewählt ist. Das erkennt Ihr an dem Sternchen links neben dem Datenträger 0.

Um die Partition erstellen zu lassen tippt Ihr folgendes Zeile für Zeile ein:

create partition EFI size=100
format quick fs=fat32 label="System"
assign letter="z"
exit

Damit haben wir nun alle möglichen Szenarien durch:

  • Die EFI-Partition existiert noch
  • Die EFI-Partition existiert nicht mehr und es ist kein freier ungenutzter Speicherplatz  vorhanden
  • Die EFI-Partition existiert nicht mehr, aber es ist noch ungenutzter Speicherplatz vorhanden

Damit wäre der Diskpart-Teil soweit auch fertig.

Eintragungen auf der EFI-Partition vornehmen lassen – Bootloader/Bootmanager/BCD

Immer noch in der Eingabeaufforderung gebt Ihr nun folgendes ein:

bcdboot c:\windows /l de-de /s z: /f UEFI

Dadurch werden auf der EFI-Partition die Standardordner \EFI\Microsoft\Boot erstellt und auch alle nötigen Startumgebungsdateien kopiert.

Mit C:\Windows ist der Pfad zu der Windowsinstallation gemeint. de-de sind die Sprach-Codes für die deutsche Sprache. “z:” ist hier unsere EFI-Partition, der wir zuvor einen Laufwerksbuchstaben gegeben hatten. Als Firmwaretyp geben wir UEFI an.

Wenn der Befehl abgearbeitet wurde, starten Sie Ihren Rechner neu und gehen Sie ins BIOS. Dort ändern Sie die Bootreihenfolge auf den Windows-Boot-Manager und lassen dies speichern. Nun sollte Ihr System wieder starten. Der erste Start nach der Reparatur dauert immer ein klein bisschen. Fertig. 🙂

Laufwerksbuchstaben der EFI-Partition entfernen (Optional)

Es kann hin und wieder mal vorkommen, dass der Laufwerksbuchstabe nach der Reparatur dennoch unter Windows weiterhin der EFI-Partition zugewiesen ist. Sollte das der Fall sein, dann starten Sie wieder Diskpart und durch die Eingabe folgendes Beispiels, könnte der Laufwerksbuchstabe wieder entfernt werden:

Die nachfolgenden Befehle sind Zeile für Zeile einzugeben und an Ihre vorliegende Situation anzupassen!

  • Disk 0 = Systemdatenträger (Windows-Installation)
  • par 4 = EFI-Partition
sel disk 0
sel par 4
remove letter="z"
exit

Zum Anfang!

26 Antworten auf „Windows 10 EFI-Partition reparieren/wiederherstellen“

  1. Moin danke für deine tolle Anleitung!
    Allerdings schleicht sich bei mir immer noch ein Fehler ein.
    Die EFI Datei konnte ich mit 100MB größe für meine disk erstellen, allerdings kann ich diese nicht zum bootmanager weiterverarbeiten.

    Ich verfüge noch über eine zweite Festplatte auf der eine EFI Datei vorliegt und diese ist auch voll funktionstüchtig nur leider für das Betriebssystem welches ich nicht brauche.
    Auch habe ich versucht dieses zu löschen leider auch ohne erfolg.

    Ich bin dankbar für jede Hilfe :).

    1. Also vorweg: Ich kenne deine Umgebung nicht. Ich weiß nicht, was alles installiert ist und wo. Bin also völlig ahnungslos 🙂

      Ich kann Dir aber sagen, dass das erstellen der EFI-Partition nicht nötig war! In der Anleitung steht doch auch extra, dass wenn mehrere Betriebssysteme installiert sind, man mit allerhöchster Wahrscheinlichkeit bereits eine EFI-Partition hat, es sei denn man ist sich sicher diese gelöscht zu haben. Die liegt dann halt auf irgendeiner anderen Platte bei Dir. Die hättest du suchen müssen. Du kannst deine Erstellte also wieder löschen. Denn es gibt immer nur 1 EFI-Partition für alle Betriebssysteme. Danach suchst du deine bereits vorhandene und kannst über den

      Befehl:

      bcdboot c:\windows /l de-de /s z: /f UEFI /addlast

      dein verschollenes Betriebssystem wieder anhängen. Übernimm das bitte nicht 1:1! Ich kenne deine Umgebung nicht! Ich weiß nicht welche Systeme bei Dir welchen Laufwerksbuchstaben haben. Das müsstest du selber herausfinden und ändern. Ebenso müsstest du der alten EFI-Partition einen Laufwerksbuchstaben zuweisen, sodass der Befehl funktioniert. Das kannst du aber in der Anleitung nachschlagen.

      Bevor du da rumexperimentierst wäre ein Backup nicht verkehrt. Sonst machst du nachher auch noch das zweite System kaputt 😀 Nur eine Empfehlung meinerseits.

  2. Hallo, danke für den Beitrag 😉
    Bei meiner Win10 Festplatte gibt es zwar eine EFI- Partition aber keine MSR Partition im diskpart.
    Die betroffene Festplatte ist bei mir Volume 4 und auch bei mir ist der Laufwerksbuchstabe “X”.
    Das Volumen ist im GPT also Uefi.

    Kann ich trotzdem probieren eine neue Efi zu schreiben oder ist das ohne MSR aussichtslos?
    VG, Andreas

    1. Das die MSR Partition fehlt ist nun nicht wirklich dramatisch. Das ginge auch ohne. Was aber definitiv ein Problem ist, ist das Sie das Laufwerk X für Ihre Windows Partition halten. Dem ist nicht so! Das ist der Laufwerksbuchstabe für das geladene WinPE (Die Umgebung in der sie auch diskpart aufrufen)!

      Wenn sie list vol eingeben ist X: der einzig angezeigte Laufwerksbuchstabe? Mit dem Laufwerksbuchstaben X: brauchen Sie es gar nicht erst versuchen.

  3. Hallo,

    erstmal vielen Dank!
    Auch mir hat diese Anleitung meinen A… gerettet , nachdem ich unter Ubuntu (via USB-Stick) die Laptop-Festplatte von MBR zu GPT umgewandelt hatte, und danach nicht mehr ging.
    Auch die “Heise”-Anleitung half mir nicht weiter, bewerben Sie sich doch dort als Redakteur 🙂

  4. Hallo, ihr Artikel hat mir EXTREM weitergeholfen. 8h hab ich rumgedoktort und die Foren durchsucht.
    Folgendes Problem: Ich hatte einen Klon (normalerweise spiel ich das System lieber neu auf, aber das hätte wohl länger gedauert) der Festplatte meiner Frau (Doktorarbeit) erstellt. HD auf SSD. Beide waren noch eingebaut (nur halt geklont), nur die Laufwerksbuchstaben, habe ich geändert, damit auf der SSD auch das Verzeichnis C: enhalten war. Alles lief ohne Problem, bis ich gestern die alte Festplatte entgültig überspielt habe. Scheinbar war auf der alten Festplatte dieses Bootverzeichnis, welches dann auf die neue Festplatte verwiesen hat. (Mein Fachgebiet liegt in anderen Bereichen;-) ) Durch das Überspielen, wurde eben dieses Bootverzeichnis gelöscht und C:/Windows wurde nicht mehr gefunden. Wahrscheinlich werden einige hier nur den Kopfschütteln. Aber es ist halt auch nciht mein täglich Brot;-)

    DANKE für die super Anleitung und ich hab heute wieder viel dazugelernt.

    mfg Manfred

    1. Das muss Ihnen nicht peinlich sein. Auch den Leuten vom Fach passiert das mal. Da kann sich keiner von freisprechen. 😉 Fehler passieren nun mal.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.