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!

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

Operating System not found“ oder ähnlich.

EFI-Partition fehlerhaft.

Ich habe deswegen extra mal das Szenario in einer meiner virtuellen Maschinen nachgebaut gehabt. Ich hatte 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 können.

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 (32-Bit oder 64-Bit) 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.

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

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

Gebt nun

diskpart

ein.

Selektiert nun mit folgenden Befehl die Systemfestplatte:

sel disk system

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.

Sollte nicht automatisch ein Systemdatenträger gefunden werden, dann könntet Ihr auch die Festplatte mit dem Befehl:

list disk

finden. Einen Hinweis auf welcher Festplatte sich Eure Installation versteckt, bekommt Ihr dadurch, dass 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.

Diskpart List Disk

Selektiert wird diese dann mit:

sel disk 0

Lassen Sie sich im Anschluss alle Partitionen anzeigen:

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 100 MB.

Verwechseln Sie dies bitte nicht mit der Systempartition bei Clients mit der Mindestgröße von 100 MB, 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 199 MB ungenutzt! Diese könnten wir direkt verwenden, aber was machen wir, wenn dort 0 MB 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 100 MB groß sein. Wenn Sie bereits beispielsweise 50 MB ungenutzten freien Speicherplatz haben, dann könnten Sie den Befehl

shrink minimum=50

nutzen um die 100 MB 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 50 MB NICHT nutzen. Das merken Sie spätestens, wenn Ihnen 100 MB 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 50 MB Speicherplatzes nicht möglich, da dieser zwischen zwei Partitionen liegt.

Es wäre hier dann erforderlich, zusätzlich 100 MB freigeben zu lassen (Bild 2) oder eben nochmals 50 MB (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 100 MB 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 dann ins BIOS. Dort ändern Sie die Bootreihenfolge auf den Windows-Boot-Manager um 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!

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

  1. Hallo, Stefan.
    Nachdem ich ewig ein Testsystem unter Hyper-V mit Deiner EFI-Reparatur Beschreibung versucht habe, wieder zu beleben und nicht erfolgreich war, hätte ich noch einen kleinen Hinweis. Mein Problem war, daß sich das Windows 10 unter PXE zwar booten ließ, aber nicht mit EFI direkt. Meine EFI-Partition war vorhanden, und ich habe immer wieder den bcdboot Befehl benutzt, ohne Erfolg. Bis ich auf den Trichter gekommen bin, mit dem Befehl rd EFI /S den EFI-Ordner völlig platt zu machen und dann bcdboot auszuführen. Vielleicht kannst Du das noch in Deine Beschreibung einfügen.

  2. Hey Stefan, tausend Dank für diese Anleitung. Ich hatte mein System geschrottet, weil ich versucht habe mit dem AOMEI Backupper einen Klon meiner Sytemplatte zu machen. Ich war zu ungeduldig und hab den Vorgang ganz normal über „Abbrechen“ abgebrochen. Irgendwie hat dadurch die EFI-Partition was abbekommen. Ich hab mein System schon öfter mal neu aufspielen müssen und hatte schon richtig schlechte Laune, weil es sich bei dem Rechner um meine Workstation handelt, und ich mal wieder einen kompletten Arbeitstag alleine mit Neuinstallation verbracht hätte. Ich finds so geil dass ich deine Anleitung gefunden habe. Allerdings existieren jetzt, nach Blick ins Bios, scheinbar zwei Bootloader auf meiner Sys-Platte. Hast du vielleicht einen Tipp wie ich Nummer 2 wieder eliminieren kann? Wäre auch nicht schlimm wenn er da weiter lebt, aber so etwas fühlt sich halt immer etwas semiprofessionell an. Ich spende auch gerne was in die Kaffeekasse. 😀 Deine Antwort würde mich sehr freuen. Danke und schönes Restwochenende. Kai.

    1. Hallo Kai,

      wenn du unter Windows bist einfach über Windowstaste+R: msconfig eingeben, dann den defekten Eintrag unter dem Register „Start“ löschen.

      1. Danke dir für die Antwort. Ich bin mal in die Konfiguration rein und unter Start hab ich leider nur die Weiterleitung zum Taskmanager gefunden. Hatte gerade wieder Probleme mit dem Start von Windows nach einem Sys-Update. BCD sei nicht kompatibel mit dem System… Galubst du es wäre eine gute Idee dein Script nochmal auszuführen oder vielleicht die EFI-Partion komplett nochmal aufzusetzen? Wäre das möglich und wenn ja weisst du wie? Danke.

      2. Sorry Stefan, hab einen einzigen Eintrag unter Start gefunden. Scheint vielleicht doch in Ordnung zu sein. Dennoch sehe ich im BIOS unter den bootoptions zweimal die gleiche Disk und wie vorher geschrieben springt er bei einer der beiden Optionen direkt in den Bluescreen oder startet auch gerne mal neu. Deshalb dachte ich wäre es vielleicht gut einmal die EFI-Partition sauber zu machen und dann nochmal deinen Trick anzuwenden. Vielleicht kannst du mir schnell nochmal mit ein paar Worten wie ich das machen könnte ohne C: zu beschädigen. Tausend Dank falls dir dazu was einfällt. 🙂

  3. Moin.

    Ich bekomme bei /fixboot immer die Fehlermeldung „Zugriff verweigert“.
    Überlege jetzt, die EFI Partition ganz zu löschen und neu zu erstellen. Könnte das helfen?
    Was müsste ich machen?

    1. Der Eintrag /fixboot ist unter Windows 10 und aufwärts veraltet und sollte nicht mehr benutzt werden. Du kannst das alles über die bcdboot.exe machen, egal ob MBR/GPT und BIOS- oder UEFI Modus.

  4. Wunderschön erklärt mit dem wichtigsten Sachen. Nachdem meine System SSD unverhofft gestorben ist musste ich mir eine neue kaufen und wollte das vor zwei Jahren erstellte Acronis Backup aufspielen, blöderweise fehlte die uefi Partition komplett warum auch immer. Zum anlegen empfehle ich auch im BIOS auf legacy zu stellen bzw uefi zu deaktivieren da er sonst die Platte sperrt. Danach dann wieder auf uefi und den bootloader neu schreiben dann fluppts wieder.

  5. Vielen Dank Stefan! – Habe hier einen Rechner, der nach WIN11- Update in einer Endlosbootschleife hing. Reparaturversuche mit den 1000-fach zu findenen Anleitungen mittels „bootrec /fixboot“ wurden quittiert mit „Zugriff verweigert“. Die 500-fach zu findenen Anleitungen, diesen Zugriffsfehler zu beheben schlugen auch alle fehl. – Nach deiner Anleitung einfach alle Partitionen außer der Windows-Partition löschen, dann neue EFI Partition anlegen und mittels „bcdboot …“ die Startumgebung wiederherstellen … Das wars und ging letztendlich rasend schnell. – Die einfachste Lösung ist wie so oft die Beste. Also Danke nochmal.

  6. 2 Tage vergeblich versucht eine Win10 Festplatte von MBR in GTP zu konvertieren (MBR2GPT), war nie startfähig. Dank deiner Anleitung war das Problem innerhalb von wenigen Minuten gelöst und die Partitionen liegen sogar jetzt sauber auf der Platte.
    Vielen Dank

Schreibe einen Kommentar

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