Schlechte Erfahrung bei der Wiederherstellung von vorinstalliertem Windows 8.1 auf einem HP Pavilion-Laptop

Hintergrund


Vor einigen Wochen wurde ich Eigentümer des HP Pavilion p170nr-Laptops mit vorinstalliertem Windows 8.1. Da ich ein begeisterter Linux-Benutzer bin, wurde beschlossen, das hauptsächliche, funktionierende Ubuntu-System zu installieren, aber auch Windows für Spielsachen und etwas launisches zu belassen, wie das Aktualisieren des BIOS. Gier spielte auch eine Rolle - für 8, dann tatsächlich das Geld, das bezahlt wurde.

Der erste Schritt war, Speicherplatz freizugeben, weil Laut dem Microsoft-Erbe belegte das System den gesamten verfügbaren Speicherplatz mit einem einzigen Laufwerk C. Google schlug vor, dass Windows endlich lernte, seine Laufwerke mit normalen Tools neu zu partitionieren. Es stellte sich jedoch heraus, dass Sie das Laufwerk C nur halbieren können. Dann kamen einige "nicht verschobene Dateien", die Windows kategorisch ablehnte. "Nicht verschiebbare Dateien" waren Rollback-Punkte und Auslagerungsdateien. Nach dem Entfernen und Ausschalten des Swap-Speichers konnte der Vorgang zum Trimmen der Festplatte auf 100 GB gestartet werden. Nach einigen Sekunden wurde jedoch ein Dialogfeld mit der Meldung angezeigt, dass nicht genügend Arbeitsspeicher vorhanden ist. Welche Erinnerung, wo und wofür - wurde nicht gemeldet. Die Festplatte hatte nicht viel Zeit zum Fragmentieren, und warum immer noch Speicher benötigt wird, ist mir ein Rätsel.

Ich musste eine Art Partitionsmanager verwenden (ich erinnere mich nicht an den genauen Namen und erkenne ihn noch nicht), der versprach, dass er mit Windows 8 funktionieren könnte, aber dadurch meine Systempartition tötete. Darüber hinaus sind sowohl es als auch der Abschnitt mit dem Image für die Wiederherstellung vollständig, obwohl ich keine Manipulationen damit durchgeführt habe.

Natürlich gab es nichts, um das System mit einem Laptop wiederherzustellen. Wie ich später herausfand, verkauft HP sie separat. Und ich habe mir nicht die Mühe gemacht, so etwas selbst zu kreieren.

SystemRescueCD kam zur Rettung. Ich werde das Auf und Ab bei Manipulationen mit fdisk und testdisk nicht beschreiben. Die Ausgabe konnte jedoch eine identische Struktur erhalten

Bild

Alle Dateien schienen vorhanden zu sein. testdisk zeigte den Inhalt aller Abschnitte mit Ausnahme von Windows und MSR korrekt an. Das Problem mit Windows lag anscheinend in der sehr großen Partition (sie fiel nur mit einem Segmentierungsfehler aus), aber ich verstand nicht, was MSR war. Es scheint nur Speicherplatz für etwas zu sein, auch ohne Dateisystem.

Das System lehnte jedoch den Start ab. Es wurde ein nummerierter Fehler ausgegeben (etwa 0x00000025). Nach dem Versuch, das Wiederherstellungstool zu starten, wurde die Meldung in "Die Datei \ windows \ system32 \ winload.efi ist beschädigt oder fehlt" geändert.

Ich musste das Windows 8.1 PE-Image herunterladen (ich fand es auf rutracker.ru bereit) und mich mit dem Studium von Bootloadern, Images und anderen Details auf niedriger Ebene befassen. Alles Folgende ist die Frucht meiner Forschung, also muss ich mich in gewisser Weise geirrt haben.

Bedingungen und Details


UEFI- und .efi-Dateien . UEFI ist, wie jeder weiß, ein BIOS-Ersatz mit erweiterten Funktionen, und .efi ist in der Tat eine ausführbare Datei dafür. In der Regel enthalten sie Bootloader, deren einziger Zweck darin besteht, die Umgebung zu initialisieren und mit dem Laden des Betriebssystems zu beginnen. Aber nicht unbedingt. Beispielsweise wird ein Speichertest als EFI-Datei implementiert.

WIM-Bilder . Neuere Versionen von Windows verwenden WIM-Dateien in großem Umfang. Im Wesentlichen ist dies nur ein Archiv, das zum Bereitstellen des Systems verwendet wird. Es kann in Volumes mit der Erweiterung .swm unterteilt werden. Das Dienstprogramm dism wird verwendet, um mit diesen Images zu arbeiten.

Startreihenfolge


Nach dem Start analysiert UEFI die Liste der Bootloader. Dies ist so etwas wie ein Startmenü, das von speziellen Dienstprogrammen wie efibootmgr unter Linux bearbeitet wird. Die Lader selbst befinden sich im Bereich „System“. Das Dateisystem dieses Abschnitts sollte FAT32 sein (ansonsten wird es von der UEFI einfach nicht gesehen). Es scheint, dass das UDF-Format auch für das Booten von CDs unterstützt wird.

Loader sind einfach .efi-Dateien, die sich normalerweise im Verzeichnis \ EFI \ NAME \ Boot befinden. NAME ist einfach ein Name, häufig mit dem Namen des Geräteherstellers. Insbesondere habe ich 2 Unterverzeichnisse im Verzeichnis \ EFI - HP und Microsoft, und der Bootloader ist auf \ EFI \ Microsoft \ Boot \ bootmgfw.efi konfiguriert.

Der standardmäßige Windows-Bootloader verfügt auch über ein eigenes Bootmenü. Es ist in der Datei \ EFI \ Microsoft \ Boot \ BCD enthalten. Dies ist im Wesentlichen nur eine Liste der von Ihnen ausführbaren .efi-Dateien und ihrer Startoptionen. Von hier aus starten beispielsweise der Speichertest, die Systemwiederherstellungsumgebung und der normale Start von Windows. Diese Datei wird mit dem Dienstprogramm bcdedit bearbeitet. Übrigens hatte ich hier nach der Wiederherstellung von Festplatten ein Problem. Einer der Boot-Record-Parameter definiert den Arbeitsdatenträger als "Gerätepartition =". Und die entsprechende .efi-Datei wird daraus geladen. Nachdem die Windows-Partition neu erstellt wurde, wurde ihre UUID geändert, sodass die Datei \ Windows \ System32 \ winboot.efi nicht gefunden wurde. Dies wurde mir jedoch erst viel später klar, nachdem ich den gesamten Abschnitt neu formatiert hatte.

Downloadvorgang im Fehlerfall


Bei einem Windows-Startfehler verfügt der Bootloader-Eintrag in der BCD über einen Wiederherstellungssequenzparameter, der angibt, welches „Element“ in diesem Fall ausgeführt werden soll. Dieser Eintrag beschreibt die Vorbereitung einer RAM-Disk aus dem Image \ Recovery \ WindowsRE \ winre.wim im Abschnitt „Recovery Tools“ und den Start des entsprechenden Windows-Bootloaders.

In der Wiederherstellungsumgebung können Sie wiederum das Wiederherstellungsimage bereitstellen, das im entsprechenden Abschnitt in der Datei install.wim gespeichert ist (ca. 17 GB). Darüber hinaus werden in diesem Abschnitt WIM-Dateien mit Treibern, Dienstprogrammen des Herstellers sowie Skripts für die Installation all dieser Dateien gespeichert. Mein install.wim wurde in viele .swm-Dateien aufgeteilt, die ungefähr 350 GB groß sind.

Im selben Abschnitt habe ich die Datei winUCRD.wim gefunden, die in Größe und Struktur der Datei winre.wim sehr ähnlich ist, sich jedoch in der Größe um einige hundert Kilobyte von der Datei unterscheidet und einige zusätzliche Dateien enthält. Vielleicht eine Art Rohling für winre, der während des Installationsprozesses finalisiert wird.

Wiederherstellungsarbeit


Alles sieht ganz einfach aus - im Falle eines Systemausfalls wird ein Wiederherstellungstool gestartet, das versucht, die Situation zu beheben. Ist dies nicht möglich, wird der Werkszustand des Systems vollständig wiederhergestellt. Nur anscheinend erschien aufgrund der vollständigen Neuerstellung mehrerer Festplatten nur ein schwarzer Bildschirm, als ich mit der Wiederherstellung begann.

Es gab noch ein paar Google-Optionen


  • Booten Sie von einer Partition mit einem Wiederherstellungs-Image. In einigen Artikeln wird empfohlen, diesen Abschnitt als aktiv zu markieren. Danach beginnt die Installation des Systems. Natürlich hat es nicht geklappt. Bei der GPT-Partitionierung gibt es keine aktive Partition, und das Dateisystem ist NTFS. Theoretisch funktioniert die Methode wahrscheinlich. Aber nicht immer und überhaupt nicht.
  • Entpacken Sie einfach das install.wim-Image auf die Windows-Festplatte, und die Installation wird von alleine durchgeführt. Bereits eine glaubwürdigere Option. install.wim war wirklich da, und es stellte sich heraus, dass es entpackt wurde. Die Installation wurde jedoch nicht gestartet, aber das System versuchte zu booten, fiel jedoch beim Laden der DirectX-Treiber aus. Anscheinend war es notwendig, die Treiber für den Laptop neu zu installieren. Aber hier trat ein Problem in Form von mehreren Dutzend .cmd- und .vbs-Skripten auf, die entwickelt wurden, um das System bereitzustellen und sie in eine sinnvolle Reihenfolge zu bringen. Das ist mir nicht gelungen. Versuche, nach install.wim einfach verschiedene .wim-Dateien auf dasselbe Laufwerk zu entpacken, führten natürlich zu nichts.
  • Brennen Sie das Image auf eine Festplatte oder ein Flash-Laufwerk und booten Sie von dort. Ich denke, das ist eine funktionierende Option. Das einzige Problem ist, dass das Image etwa 20 GB benötigt und das Auffinden eines solchen Mediums ein Problem sein kann.


Daraufhin beschloss ich, meine Recherche zu beenden. Bis Montag wurde ein funktionierender Laptop benötigt, um Ubuntu zu installieren und zu konfigurieren, und alles, was benötigt wurde, dauerte ungefähr 5 Stunden.

PS Beim Sammeln von Material für diesen Artikel bin ich auf einen interessanten Beitrag gestoßen, in dem erklärt wird, warum das Wiederherstellungstool möglicherweise nicht gestartet wird. Dazu müssen Sie in BCD die Parameter der RAM-Disk und der Disk angeben, auf der sich das installierte Windows befindet (das war), was für mich ebenfalls ausfallen könnte.

PPS Ja, der Punkt war, dass der Parameter device / osdevice der BCD-Aufzeichnung mit Load Recovery Tools keinen Datensatz mit RAM-Disk-Parametern angab, aber nicht klar war, wo. Sie können mit den folgenden Befehlen wiederherstellen ()

bcdedit /create {ramdiskoptions} /d "Ramdisk options"
bcdedit /set {ramdiskoptions} ramdisksdidevice partition=Drive
bcdedit /set {ramdiskoptions} ramdisksdipath \Recovery\WindowsRE\boot.sdi

Hier: Laufwerk - Die Festplatte, auf der das Wiederherstellungsabbild gespeichert ist. Dies ist keine UUID, sondern einfach 'c:'
  • Laufwerk - Die Festplatte, auf der das Wiederherstellungsabbild gespeichert ist. Dies ist keine UUID, sondern nur ein String mit dem Laufwerksbuchstaben 'c:' (ohne Anführungszeichen)
  • {ramdiskoptions} - dies wird auf diese Weise angezeigt (vordefinierter Name), aber Sie können hier die GUID des Eintrags ersetzen


Bearbeiten Sie nun die Parameter der Aufzeichnung des Starts der Wiederherstellungsumgebung (Sie können sie neu erstellen):
bcdedit /create /d "Boot from WIM" /application OSLOADER
bcdedit /set {GUID} device ramdisk=[c:]\Recovery\WindowsRE\winre.wim,{ramdiskoptions}
bcdedit /set {GUID} path \windows\system32\winload.efi
bcdedit /set {GUID} osdevice ramdisk=[c:]\Recovery\WindowsRE\winre.wim,{ramdiskoptions}
bcdedit /set {GUID} systemroot \windows


Hier:
  • GUID - ID des Startdatensatzes der Wiederherstellungsumgebung, den Sie bei Bedarf erstellen können
  • [c:] - Der aktuelle Laufwerksbuchstabe, auf dem sich winre.wim befindet. Die Festplatte kann ausgeblendet werden. In diesem Fall wird der Pfad durch die ID {UUID} \ Recovery \ WindowsRE \ winre.wim angegeben

Jetzt auch beliebt: