Fehlerbehebung bei Windows-VMs


In diesem Dokument werden die Methoden und Tools beschrieben, die zum Beheben der folgenden Boot-Probleme mit Compute Engine Windows-VM-Instanzen verfügbar sind:

  • Sie können keine RDP-Verbindung zur VM herstellen. Die Fehlerbehebung kann für die Verbindung nicht erfolgreich beheben.

  • Der Anmeldebildschirm wurde nicht in einem VM-Screenshot angezeigt und die VM scheint keine Fortschritte zu machen bzw. kein Update durchzuführen.

  • Es ist ein Bluescreen-Fehler aufgetreten, die VM ist unter normalem Betrieb eingefroren ist oder verhält sich fehlerhaft.

Wenn Sie Probleme beim Herstellen einer Verbindung zu Windows-VMs haben, lesen Sie den Abschnitt Fehlerbehebung bei RDP.

Hinweise

  • Informationen zur Fehler-Behebung des Windows-Startvorgangs finden Sie unter Fehlerbehebung bei Microsoft Windows für Windows-Startvorgänge.
  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren.

    Wählen Sie den Tab für die Verwendung der Beispiele auf dieser Seite aus:

    Console

    Wenn Sie über die Google Cloud Console auf Google Cloud-Dienste und -APIs zugreifen, müssen Sie die Authentifizierung nicht einrichten.

    gcloud

    1. Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

      gcloud init
    2. Legen Sie eine Standardregion und -zone fest.

Menü "Erweiterte Startoptionen" verwenden

Wenn Windows nicht ordnungsgemäß startet, können Sie über das Menü "Erweiterte Startoptionen" auf den abgesicherten Modus zugreifen oder eine Onlinereparatur des Betriebssystems ausführen. Weitere Informationen finden Sie unter Erweiterte Startoptionen.

Führen Sie die folgenden Schritte aus, um auf Ihrer Windows-VM das Menü "Erweiterte Bootoptionen" zu öffnen:

  1. Aktivieren Sie ein Anzeigegerät für die VM, falls noch nicht geschehen.
  2. Stellen Sie eine Verbindung zur interaktiven seriellen Konsole der VM her.

  3. Starten Sie die VM mit einer der folgenden Methoden neu:

    Console

    1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

      Zur Seite „VM-Instanzen“

    2. Klicken Sie auf den Namen der VM, die Sie neu starten möchten. Die Seite "VM-Instanzdetails" wird geöffnet.

    3. Klicken Sie auf Zurücksetzen, um die VM neu zu starten.

    gcloud

    Verwenden Sie den Befehl gcloud compute instances reset, um die VM zurückzusetzen:

    gcloud compute instances reset VM_NAME --zone=ZONE --project=PROJECT_ID
    

    Dabei gilt:

    • PROJECT_ID: Die ID des Projekts, das die VM enthält
    • ZONE: Der Name der Zone, in der sich die VM befindet
    • VM_NAME: Der Name der VM

    Eingabeaufforderung

    Öffnen Sie während einer Verbindung zur interaktiven seriellen Konsole eine Eingabeaufforderungssitzung und führen Sie den folgenden Befehl aus. Weitere Informationen zum Öffnen einer Eingabeaufforderungssitzung finden Sie unter Eingabeaufforderung in Windows-SAC öffnen.

    shutdown /r /t 0
    

    Das Menü "Windows-Start-Manager" wird geöffnet:

    Windows-Boot-Manager-Menü

  4. Führen Sie vor Ablauf des Countdowns die folgenden Schritte aus:

    1. Prüfen Sie, ob die interaktive serielle Konsole Ihr aktives Fenster ist.

    2. Drücken Sie die Taste Esc auf Ihrer Tastatur.

    3. Drücken Sie die Zifferntaste 8 auf Ihrer Tastatur.

    Das Menü "Erweiterte Bootoptionen" wird geöffnet:

    Menü für erweiterte Bootoptionen

  5. Verwenden Sie die Pfeiltasten auf Ihrer Tastatur, um eine Option auszuwählen, und öffnen Sie diese dann, indem Sie die Eingabetaste drücken.

Menü "Windows-Start-Manager" aktivieren

Sie können das Menü "Windows-Start-Manager" so konfigurieren, dass es angezeigt wird, wenn eine Windows-VM-Instanz neu gestartet wird. So aktivieren Sie das Menü "Windows-Start-Manager":

Stellen Sie eine Verbindung zur VM her und öffnen Sie eine Eingabeaufforderung mit Administratorzugriff. Wenn Sie keine Verbindung zur VM herstellen können, fügen Sie die nachfolgenden Schritte als Werte einem Startskript von windows-startup-script-cmd oder windows-startup-script-ps1 hinzu, anstatt sie direkt auszuführen.

Eingabeaufforderung

  1. Führen Sie die folgenden Befehle aus, um das Windows-Boot-Manager-Menü beim Start zu aktivieren und ein Zeitlimit von 15 Sekunden hinzuzufügen:

    bcdedit /set {bootmgr} displaybootmenu yes
    
    bcdedit /set {bootmgr} timeout 15
    
  2. Führen Sie den folgenden Befehl aus, um die VM neu zu booten und das Windows-Bootmanager-Menü in der seriellen Konsole aufzurufen:

    shutdown -r -t 0
    

PowerShell

  1. Führen Sie die folgenden Befehle aus, um das Windows-Boot-Manager-Menü beim Start zu aktivieren und ein Zeitlimit von 15 Sekunden hinzuzufügen:

    bcdedit /set '{bootmgr}' displaybootmenu yes
    
    
    bcdedit /set '{bootmgr}' timeout 15
    
  2. Führen Sie den folgenden Befehl aus, um die VM neu zu booten und das Windows-Bootmanager-Menü in der seriellen Konsole aufzurufen:

    shutdown -r -t 0
    

Offlinereparatur vornehmen

Wenn Ihre VM nicht ordnungsgemäß gestartet wird und das erweiterte Startmenü das Problem nicht beheben konnte, versuchen Sie eine Offline-Reparatur. Dazu verwenden Sie eine funktionsfähige Windows-VM-Instanz zur Wiederherstellung mit dem Snapshot des fehlerhaften Bootlaufwerks. Mit einem Snapshot können Sie eine Sicherungskopie erstellen, die geändert werden kann, ohne den Status der ursprünglichen VM zu ändern.

  1. Erstellen Sie einen Snapshot des Bootlaufwerks der fehlerhaften VM.

  2. Erstellen Sie ein Laufwerk mit diesem Snapshot.

  3. Erstellen Sie eine VM mit einem zusätzlichen Nicht-Bootlaufwerk mithilfe des neu erstellten Laufwerks. Ihre Wiederherstellungs-VM sollte die folgenden Kriterien erfüllen:

    • Die Wiederherstellungs-VM muss sich in derselben Zone befinden wie das erstellte Laufwerk.
    • Die Wiederherstellungs-VM sollte ebenfalls ein Windows Server-Image verwenden.
    • Das Quell-Image des Bootlaufwerks der Wiederherstellungs-VM sollte sich vom Quell-Image des Bootlaufwerks der fehlerhaften VM unterscheiden.
  4. Sie können jetzt mit Windows-Tools und -Dienstprogrammen versuchen, eine Offlinereparatur des zusätzlichen angehängten Laufwerks durchzuführen. Ausführliche Informationen zum Durchführen einer Offlinereparatur Ihrer VM finden Sie in der folgenden Dokumentation:

  5. Wenn die Offlinereparatur erfolgreich durchgeführt wurde, aktualisieren Sie das Bootlaufwerk der fehlerhaften VM auf das neu reparierte Bootlaufwerk.

  6. Optional: Löschen Sie die zusätzlichen Ressourcen, wenn Sie sie nicht mehr benötigen:

Bluescreen-Fehler beheben

Beim Windows-Betriebssystem kann es zu einem Stoppcode oder Bluescreen-Fehler kommen, der auch als Todes-Bluescreen bezeichnet wird. Wenn bei einer VM ein Bluescreen-Fehler auftritt, wird die VM beendet und muss neu gestartet werden, bevor sie den normalen Betrieb fortsetzen kann.

Wenn Sie glauben, dass ein blauer Bildschirmfehler vorliegt, können Sie dies bestätigen, indem Sie das Vorliegen von Fehlern mithilfe einer oder mehr der folgenden Methoden ermitteln:

Serieller Port 1

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zu „VM-Instanzen“

  2. Klicken Sie auf den Namen der VM, für die Sie Logs aufrufen möchten. Die Seite VM-Instanzdetails wird geöffnet.

  3. Klicken Sie unter Logs auf Serieller Port 1.

  4. Ein Stacktrace-Dump ähnlich dem folgenden bestätigt einen Bluescreen-Fehler:

    ntoskrnl.exe [0xFFFFF802C9606000, 0xFFFFF802C9E23000]
    netbios.sys [0xFFFFF80E98430000, 0xFFFFF80E98442000]
    volmgr.sys [0xFFFFF80E97E40000, 0xFFFFF80E97E58000]
    NTFS.sys [0xFFFFF80E98060000, 0xFFFFF80E98293000]
    crashdmp.sys [0xFFFFF80E986C0000, 0xFFFFF80E986D9000]
    pvpanic.sys [0xFFFFF80E99030000, 0xFFFFF80E9903C000]
    myfault.sys [0xFFFFF80E9A570000, 0xFFFFF80E9A578000]
    Dumping stack trace:
    0xFFFFF80E990317C7 (pvpanic.sys+0x17C7)
    0xFFFFF80E990316D3 (pvpanic.sys+0x16D3)
    0xFFFFF802C97D9681 (ntoskrnl.exe+0x1D3681)
    0xFFFFF802C97D8A1F (ntoskrnl.exe+0x1D2A1F)
    0xFFFFF802C97633F4 (ntoskrnl.exe+0x15D3F4)
    0xFFFFF802C9773329 (ntoskrnl.exe+0x16D329)
    0xFFFFF802C976F152 (ntoskrnl.exe+0x169152)
    0xFFFFF80E9A572794 (myfault.sys+0x2794)
    Current Process: notmyfault64.e
    

Serieller Port 2

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zu „VM-Instanzen“

  2. Klicken Sie auf den Namen der VM, für die Sie Logs aufrufen möchten. Die Seite VM-Instanzdetails wird geöffnet.

  3. Maximieren Sie unter Logs den Eintrag Mehr und klicken Sie auf Serieller Port 2 (Konsole).

  4. Überprüfen Sie den seriellen Port der Instanz und suchen Sie nach dieser Ausgabe ähnlich der Folgenden:

    !SAC>
    Your PC ran into a problem and needs to restart.
    If you call a support person, give them this info:
    UNEXPECTED_KERNEL_MODE_TRAP
    
    myfault.sys
    
    0x0000000000000008
    0xFFFFC6812AB94F70
    0xFFFFC6812E38EFF0
    0xFFFFF80E9A572794
    
    We're just collecting some error info, and then we'll restart for you.
    100% complete
    

Eingabeaufforderung

  1. Stellen Sie eine Verbindung zur Instanz her und öffnen Sie eine Eingabeaufforderung mit Administratorzugriff.

  2. Führen Sie den folgenden Befehl aus, um das neueste Bluescreen-Ereignis anzuzeigen:

    wevtutil qe System "/q:*[System [(EventID=1001)]]" /rd:True /c:1 /f:Text
    
  3. Prüfen Sie die Ausgabe, die in etwa so aussieht:

    Event[0]:
      Log Name: System
      Source: Microsoft-Windows-WER-SystemErrorReporting
      Date: 2021-04-14T08:53:52.933
      Event ID: 1001
      Task: N/A
      Level: Error
      Opcode: N/A
      Keyword: Classic
      User: N/A
      User Name: N/A
      Computer: WINDOWS
      Description:
    The computer has rebooted from a bugcheck.  The bugcheck was: 0x1000007f (0x
    0000000000000008, 0xffffc6812ab94f70, 0xffffc6812e38eff0, 0xfffff80e9a572794
    ). A dump was saved in: C:\Windows\Minidump\041421-12656-01.dmp. Report Id:
    a5710c98-a577-4b3e-a3c9-2fc0aa4e5d83.
    

Informationen zum Anpassen von wetutil-Abfragen finden Sie unter wevtutil.

Laufwerk-Snapshot

Die VM ist nicht mehr betriebsbereit oder die anderen Methoden haben sich als nicht erfolgreich erwiesen. Sie können das Bootlaufwerk der vermuteten Bluescreen-VM mit einer sekundären VM prüfen. Mit einem Snapshot können Sie eine Sicherungskopie erstellen, die geändert werden kann, ohne den Status der ursprünglichen VM zu ändern.

  1. Erstellen Sie einen Snapshot des VM-Bootlaufwerks der vermuteten Blue Screen-VM.

  2. Erstellen Sie ein Laufwerk mit diesem Snapshot.

  3. Erstellen Sie eine VM mit einem zusätzlichen Nicht-Bootlaufwerk und verwenden Sie das neu erstellte Laufwerk der vermuteten VM. Ihre Wiederherstellungs-VM sollte die folgenden Kriterien erfüllen:

    • Die Wiederherstellungs-VM muss sich in derselben Zone befinden wie das erstellte Laufwerk.
    • Die Wiederherstellungs-VM sollte ebenfalls ein Windows Server-Image verwenden.
    • Das Quell-Image des Bootlaufwerks der Wiederherstellungs-VM sollte sich vom Quell-Image des Bootlaufwerks der fehlerhaften VM unterscheiden.
  4. Durchsuchen Sie das zusätzliche Laufwerk und suchen Sie die folgenden Dateien:

    %SystemRoot%\Memory.dmp
    %SystemRoot%\Minidump\DATE-TIME-NUM.dmp
    

    Anhand des Datums und der Uhrzeit der Datei können Sie feststellen, ob bei der verdächtigen Instanz ein Bluescreen-Fehler aufgetreten ist. Diese Dateien können auch für Analysen und Diagnosen verwendet werden.

  5. Optional: Löschen Sie die zusätzlichen Ressourcen, wenn Sie sie nicht mehr benötigen:

Nachdem Sie die Bluescreen-Fehlerinformationen und optional Zugriff auf die Arbeitsspeicher-Dumpdatei erhalten haben, folgen Sie den Diagnoseschritten und Empfehlungen von Microsoft:

Lizenzierungsprobleme

Windows-Betriebssysteme verlängern ihre Lizenzen alle sieben Tage. Dazu stellen sie eine Verbindung zum Key Management Service (KMS)-Server her. Wenn Sie Benachrichtigungen zum Ablauf der Lizenz oder zu anderen Problemen im Zusammenhang mit Lizenzen auf Ihren Windows-VMs erhalten, gehen Sie so vor:

  1. Prüfen Sie, ob das VPC-Netzwerk der Windows-VM so konfiguriert ist, dass die Kommunikation mit KMS zugelassen wird.

  2. Prüfen Sie, ob die Windows-Firewall ausgehende Verbindungen zum KMS-Server zulässt:

    • IP-Adresse: 35.190.247.13
    • Port: 1688
    • Protokoll: TCP

    Weitere Informationen zum Konfigurieren von Windows-erweiterten Firewallregeln finden Sie unter Regel für ausgehenden Port erstellen.

  3. Testen Sie dass die Verbindung zu dem KMS-Server erfolgreich ist mithilfe des folgenden Befehls:

    powershell.exe Test-NetConnection 35.190.247.13 -Port 1688
    
  4. Führen Sie die folgenden Befehle aus, um den aktuellen Status Ihrer Lizenz zu prüfen, die Server-IP-Adresse des KMS festzulegen und eine Aktivierung zu erzwingen:

    cscript \windows\system32\slmgr.vbs /dlv
    
    cscript \windows\system32\slmgr.vbs /skms 35.190.247.13:1688
    
    cscript \windows\system32\slmgr.vbs /ato
    

Fehlerbehebung bei der interaktiven seriellen Konsole

  1. Prüfen Sie, ob die Voraussetzungen für den Zugriff auf die serielle Konsole erfüllt sind.

  2. Aktivieren Sie Emergency Management Services. Wenn EMS deaktiviert ist, akzeptiert die serielle Konsole keine Tastatureingaben, sondern zeigt nur einen leeren Bildschirm mit einem blinkenden Cursor an.

    Eingabeaufforderung

    1. Stellen Sie über RDP eine Verbindung zur VM her und öffnen Sie Command Prompt als Administrator. Wenn Sie keine RDP-Verbindung herstellen können, fügen Sie die nachfolgenden Schritte als Werte dem Startschlüssel windows-startup-script-cmd hinzu.

    2. Legen Sie die globalen EMS-Weiterleitungseinstellungen auf die Verwendung von COM2, einer Baudrate von 115200, fest und aktivieren Sie EMS.

      bcdedit /emssettings EMSPORT:2 EMSBAUDRATE:115200
      bcdedit /ems on
      
    3. Starten Sie die VM neu, um die aktualisierte Konfiguration anzuwenden. Wenn Sie ein Metadatenskript verwenden, fügen Sie den Shutdown-Befehl nicht hinzu.

      shutdown -r -t 0
      

    PowerShell

    1. Stellen Sie eine Verbindung über RDP her und öffnen Sie Powershell als Administrator. Wenn Sie keine RDP-Verbindung herstellen können, fügen Sie die nachfolgenden Schritte als Werte dem Startschlüssel windows-startup-script-ps1 hinzu.

    2. Legen Sie die globalen EMS-Weiterleitungseinstellungen auf die Verwendung von COM2, einer Baudrate von 115200, fest und aktivieren Sie EMS.

      bcdedit /emssettings EMSPORT:2 EMSBAUDRATE:115200
      bcdedit /ems on
      
    3. Starten Sie die VM neu, um die aktualisierte Konfiguration anzuwenden. Wenn Sie ein Metadatenskript verwenden, fügen Sie den Shutdown-Befehl nicht hinzu.

      shutdown -r -t 0
      

Nächste Schritte