Avancerad felsökning för Windows-låsningar

Den här artikeln beskriver hur du felsöker problem med att låsa på Windows-baserade datorer och servrar. Den innehåller också metoder för att samla in data som hjälper administratörer eller programvaruutvecklare att diagnostisera, identifiera och åtgärda dessa problem.

Obs!

De produkter från andra tillverkare som diskuteras i denna artikel tillverkas oberoende av Microsoft. Produkternas funktion eller tillförlitlighet kan därför inte garanteras.

Gäller för: Windows 10

Identifiera problemet

  • Vilken dator fryser? Den berörda datorn är till exempel en fysisk server eller en virtuell server.
  • Vad hände när den frös? Det här problemet uppstår till exempel när du stänger av.
  • Hur ofta uppstår felen? Det här problemet inträffar till exempel varje kväll kl. 19.00.
  • På hur många datorer sker den här frysningen? Till exempel alla datorer eller bara en dator.

Felsöka problem med frysning

Om du vill felsöka problemet kontrollerar du datorns aktuella status och följer någon av följande metoder.

För den dator som fortfarande körs i låst tillstånd

Om den fysiska datorn eller den virtuella datorn fortfarande fryser använder du en eller flera av följande metoder för felsökning:

  • Försök att komma åt datorn via en fjärrskrivbordsanslutning.
  • Använd ett domänkonto eller ett lokalt administratörskonto för att logga in på datorn med maskinvarutillverkarens fjärråtkomstlösning. Till exempel Dell Remote Access Card (DRAC), HP Integrated Lights-Out (iLo) eller IBM Remote Supervisor Adapter (RSA).
  • Testa ping till datorn. Leta efter borttagna paket och långa nätverksfördröjningar.
  • Få åtkomst till administrativa resurser, till exempel \\ServerName\c$.
  • Tryck på Ctrl+Alt+Ta bort och kontrollera svaret.
  • Försök att använda Windows fjärradministrationsverktyg. Till exempel Datorhantering, Serverhanteraren och Wmimgmt.msc.

För datorn som inte längre är låst

Om den fysiska datorn eller den virtuella datorn frös, men nu körs i ett bra tillstånd, använder du en eller flera av följande metoder för felsökning.

För en fysisk dator

  • Granska system- och programloggarna från datorn som har problemet. Kontrollera händelseloggarna för relevant händelse-ID:

    • Programhändelselogg: Programfel, vilket tyder på en krasch eller relevant systemprocess
    • Systemhändelseloggar, Felhändelse-ID för Service Control Manager för kritiska systemtjänster
    • Fel händelse-ID:n 2019/2020 med käll-Srv/Server
  • Generera en systemdiagnostikrapport genom att köra perfmon /report.

För en virtuell dator

  • Granska system- och programloggarna från datorn som har problemet.
  • Generera en systemdiagnostikrapport genom att köra perfmon /report.
  • Kontrollera systemets historik i övervakningsverktygen för virtuell hantering.

Samla in data för problem med frysning

Om du vill samla in data för en serverfrysning kontrollerar du följande tabell och använder en eller flera av de föreslagna metoderna.

Datortyp och tillstånd Datainsamlingsmetod
En fysisk dator som körs i låst tillstånd Använd en minnesdumpfil för att samla in data. Eller använd metod 2, 3 eller 4. Dessa metoder visas senare i det här avsnittet.
En fysisk dator som inte längre är låst Använd metod 1, 2, 3 eller 4. Dessa metoder visas senare i det här avsnittet. Och använd Pool Monitor för att samla in data.
En virtuell dator som körs i låst tillstånd Hyper-V eller VMware: Använd en minnesdumpfil för att samla in data för den virtuella datorn som körs i ett låst tillstånd.
XenServer: Använd metod 1, 2, 3 eller 4. Dessa metoder visas senare i det här avsnittet.
En virtuell dator som inte längre är låst Använd metod 1, 2, 3 eller 4. Dessa metoder visas senare i det här avsnittet.

Metod 1: Minnesdump

Viktigt

Följ stegen i det här avsnittet noggrant. Det kan uppstå allvarliga problem om du gör felaktiga ändringar i registret. Innan du ändrar det bör du först säkerhetskopiera registret för att kunna återställa det om problem skulle uppstå.

En fullständig minnesdumpfil registrerar allt innehåll i systemminnet när datorn oväntat stoppas. En fullständig minnesdumpfil kan innehålla data från processer som kördes när minnesdumpfilen samlades in.

Om datorn inte längre är låst och nu körs i ett bra tillstånd använder du följande steg för att aktivera minnesdump så att du kan samla in minnesdump när problemet med frysningen uppstår igen. Om den virtuella datorn fortfarande körs i låst tillstånd använder du följande steg för att aktivera och samla in minnesdumpar.

Obs!

Om du har en omstartsfunktion som är aktiverad på datorn, till exempel funktionen Automatisk omstart av system (ASR) i Compaq-datorer, inaktiverar du den. Den här inställningen finns vanligtvis i BIOS. Om BIOS inte identifierar ett pulsslag från operativsystemet startar den om datorn med den här funktionen aktiverad. Omstarten kan avbryta dumpprocessen.

  1. Kontrollera att datorn är konfigurerad för att hämta en fullständig minnesdumpfil.

    1. Gå till Kör och ange Sysdm.cploch tryck sedan på Retur.
    2. I Systemegenskaper går du till fliken Avancerat och väljerAvanceradeprestandainställningar>>. Välj Ändra för att kontrollera eller ändra det virtuella minnet.
    3. Gå tillbaka tillAvancerade>inställningar för systemegenskaper> vid start och återställning.
    4. I avsnittet Skriv felsökningsinformation väljer du Slutför minnesdump.
    5. Välj Skriv över en befintlig fil.
    6. Kontrollera att det finns en växlingsfil (pagefile.sys) på systemenheten och att den är minst 100 MB över det installerade RAM-minnet (initial och maximal storlek).
    7. Kontrollera att det finns mer tillgängligt utrymme på systemenheten än det finns fysiskt RAM-minne.
  2. Aktivera registervärdet för att systemet ska kunna generera en dumpfil med hjälp av tangentbordet CrashOnCtrlScroll .

    1. Öppna Editor och leta upp följande registernycklar:

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters
    2. Skapa följande CrashOnCtrlScroll registerpost i de två registernycklarna:

      • Värdenamn: CrashOnCtrlScroll
      • Datatyp: REG_DWORD
      • Värde: 1
    3. Stäng registret Editor och starta om datorn.

  3. På vissa fysiska datorer som kör tidigare versioner av Windows kan du generera ett ickemakebart avbrott (NMI) från en webbgränssnittsfunktion som DRAC, iLo eller RSA. Men som standard stoppar den här inställningen systemet utan att skapa en minnesdump.

    Obs!

    Registernyckeln NMICrashDump krävs inte längre för versioner av Windows som stöds för närvarande. Ett NMI orsakar ett stoppfel som följer på en minnesdumpdatainsamling.

  4. När problemet uppstår håller du ned ctrl-tangenten till höger och trycker på rullningslåset två gånger för att generera en minnesdumpfil.

    Obs!

    Som standard finns dumpfilen i följande sökväg: %SystemRoot%\MEMORY. DMP.

Metod 2: Kontroll av datasinne

Använd verktyget Dump Check (Dumpchk.exe) för att läsa en minnesdumpfil. Den kan också kontrollera att filen har skapats korrekt och inte är skadad eller ogiltig.

Lär dig hur du använder Dumpchk.exe för att kontrollera dina dumpfiler:

Metod 3: Prestandaövervakare

Du kan använda Prestandaövervakaren i Windows för att undersöka hur program som du kör påverkar datorns prestanda, både i realtid och genom att samla in loggdata för senare analys. Om du vill skapa prestandaräknare och händelsespårningsloggsamlingar på lokala system och fjärrsystem kör du följande kommandon i en kommandotolk som administratör:

Logman create counter LOGNAME_Long -u DOMAIN\USERNAME * -f bincirc -v mmddhhmm -max 500 -c "\\COMPUTERNAME\LogicalDisk(*)\*" "\\COMPUTERNAME\Memory\*" "\\COMPUTERNAME\Network Interface(*)\*" "\\COMPUTERNAME\Paging File(*)\*" "\\COMPUTERNAME\PhysicalDisk(*)\*" "\\COMPUTERNAME\Process(*)\*" "\\COMPUTERNAME\Redirector\*" "\\COMPUTERNAME\Server\*" "\\COMPUTERNAME\System\*" "\\COMPUTERNAME\Terminal Services\*" "\\COMPUTERNAME\Processor(*)\*" "\\COMPUTERNAME\Cache\*" -si 00:05:00
Logman create counter LOGNAME_Short -u DOMAIN\USERNAME * -f bincirc -v mmddhhmm -max 500 -c "\\COMPUTERNAME\LogicalDisk(*)\*" "\\COMPUTERNAME\Memory\*" "\\COMPUTERNAME\Network Interface(*)\*" "\\COMPUTERNAME\Paging File(*)\*" "\\COMPUTERNAME\PhysicalDisk(*)\*" "\\COMPUTERNAME\Process(*)\*" "\\COMPUTERNAME\Redirector\*" "\\COMPUTERNAME\Server\*" "\\COMPUTERNAME\System\*" "\\COMPUTERNAME\Terminal Services\*" "\\COMPUTERNAME\Processor(*)\*" "\\COMPUTERNAME\Cache\*" -si 00:00:10

Sedan kan du starta eller stoppa loggen genom att köra följande kommandon:

logman start LOGNAME_Long / LOGNAME_Short
logman stop LOGNAME_Long / LOGNAME_Short

Loggen prestandaövervakare finns i sökvägen: C:\PERFLOGS.

Andra metoder för att samla in data

Använd minnesdump för att samla in data för den fysiska dator som körs i låst tillstånd

Varning

Följ stegen i det här avsnittet noggrant. Det kan uppstå allvarliga problem om du gör felaktiga ändringar i registret. Innan du ändrar det bör du först säkerhetskopiera registret för att kunna återställa det om problem skulle uppstå.

Om den fysiska datorn fortfarande körs i låst tillstånd följer du dessa steg för att aktivera och samla in minnesdump:

  1. Kontrollera att datorn är konfigurerad för att hämta en fullständig minnesdumpfil och att du kan komma åt den via nätverket.

    Obs!

    Om det inte går att komma åt den berörda datorn via nätverket kan du försöka generera en minnesdumpfil via NMI. Resultatet av åtgärden kanske inte samlar in en minnesdumpfil om några av följande inställningar inte är kvalificerade.

    1. Försök att komma åt datorns skrivbord på något sätt.

      Obs!

      Om det inte går att komma åt operativsystemet kan du prova att fjärransluta till Registry Editor på datorn. Du kan sedan kontrollera vilken typ av minnesdumpfil och sidfil som datorn för närvarande är konfigurerad med.

    2. Från en fjärrdator som helst finns i samma nätverk och undernät går du till Register Editor>Anslut nätverksregister. Anslut sedan till den berörda datorn och kontrollera följande inställningar:

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\CrashDumpEnabled

        Kontrollera att registerposten CrashDumpEnabled är 1.

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\NMICrashDump

        Om registerposten finns och dess värde är 1 på vissa fysiska servrar NMICrashDump kan du dra nytta av NMI från fjärrhanteringsprovidern, till exempel DRAC, iLo och RSA.

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PagingFiles and ExistingPageFiles

        Om värdet för Pagefile registerposten är systemhanterat återspeglas inte storleken i registret. Till exempel ?:\pagefile.sys)

        Om sidfilen är anpassad återspeglas storleken i registret, till exempel ?:\pagefile.sys 1024 1124. I det här exemplet är 1024 den ursprungliga storleken och 1124 är den maximala storleken.

        Obs!

        Om storleken inte återspeglas i registret kan du försöka komma åt en administrativ resurs där sidfilen finns. Till exempel \\ServerName\C$.

    3. Kontrollera att det finns en växlingsfil (pagefile.sys) på datorns systemenhet och att den är minst 100 MB över det installerade RAM-minnet.

    4. Se till att det finns mer ledigt utrymme på datorns hårddiskar än det finns fysiskt RAM-minne.

  2. Aktivera registervärdet CrashOnCtrlScroll på datorn så att systemet kan generera en dumpfil med hjälp av tangentbordet.

    1. Från en fjärrdator helst i samma nätverk och undernät går du till Register Editor>Anslut nätverksregistret. Anslut till den berörda datorn och leta upp följande registernycklar:

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters
    2. Skapa följande CrashOnCtrlScroll registerpost i de två registernycklarna:

      Värdenamn: CrashOnCtrlScroll Datatyp: REG_DWORD Värde: 1

    3. Stäng registret Editor och starta om datorn.

  3. När problemet uppstår håller du ned ctrl-tangenten till höger och trycker på rullningslåset två gånger för att generera en minnesdump.

    Obs!

    Som standard finns dumpfilen i sökvägen: %SystemRoot%\MEMORY. DMP.

Använd poolövervakaren för att samla in data för den fysiska datorn som inte längre är låst

Poolövervakaren visar antalet allokeringar och utestående byte av allokering efter typ av pool och taggen som skickas till anrop av ExAllocatePoolWithTag.

Mer information finns i Använda PoolMon för att hitta en Kernel-Mode minnesläcka och PoolMon-exempel.

Använd minnesdump för att samla in data för den virtuella datorn som körs i ett låst tillstånd

Använd någon av följande metoder för det program där den virtuella datorn körs.

Microsoft Hyper-V

Du kan också använda den inbyggda NMI-funktionen via en debug-VM-cmdlet för att felsöka och hämta en minnesdump.

Om du vill felsöka de virtuella datorerna på Hyper-V kör du följande cmdlet i Windows PowerShell:

Debug-VM -Name "VM Name" -InjectNonMaskableInterrupt -ComputerName Hostname  

Vmware

Du kan använda VMware-ögonblicksbilder eller pausa tillstånd och extrahera en minnesdumpfil som motsvarar en fullständig minnesdumpfil. Använd VMwares Checkpoint To Core Tool (vmss2core) för att konvertera tillståndsfiler för både paus (.vmss) och ögonblicksbilder (.vmsn) till en dumpfil. Analysera sedan filen med hjälp av standardverktygen för Windows-felsökning.

Obs!

När du arbetar med Microsoft Support bör du använda VMwares Checkpoint To Core Tool (vmss2core) för att konvertera VMware-ögonblicksbilder till en dumpfil innan du laddar upp dem till Microsoft. Om du har problem med konverteringen av ögonblicksbilder kontaktar du VMware för support.

Citrix XenServer

Processen för minnesdump sker genom att trycka på tangentkombinationen Höger Ctrl+Rullningslås+Rullningslås. Mer information finns i Metod 1 i Så här utlöser du en minnesdump från en virtuell Windows-dator som körs på XenServer från Citrix.

Utrymmesbegränsningar på systemenheten i Windows Server

På en Windows Server kanske du inte har tillräckligt med ledigt diskutrymme för att generera en fullständig minnesdumpfil på systemvolymen.

Det finns ett andra alternativ om systemenheten inte har tillräckligt med utrymme. Du kan använda DedicatedDumpFile registerposten. Mer information finns i Konfigurera målsökvägen för en minnesdump.

Mer information finns i How to use the DedicatedDumpFile registry value to overcome space limitations on the system drive (Så här använder du registervärdet DedicatedDumpFile för att lösa utrymmesbegränsningar på systemenheten).

Ansvarsfriskrivning för tredje part

Microsoft tillhandahåller kontaktinformation från tredje part som hjälper dig att hitta ytterligare information om det här ämnet. Denna kontaktinformation kan ändras utan föregående meddelande. Microsoft garanterar inte att kontaktinformation från tredje part är korrekt.

Ansvarsfriskrivning för information från tredje part

De produkter från andra tillverkare som diskuteras i denna artikel tillverkas oberoende av Microsoft. Produkternas funktion eller tillförlitlighet kan därför inte garanteras.