Windows donması için gelişmiş sorun giderme

Bu makalede, Windows tabanlı bilgisayarlarda ve sunucularda dondurma sorunlarını giderme adımları açıklanmaktadır. Ayrıca, yöneticilerin veya yazılım geliştiricilerin bu sorunları tanılamalarına, tanımlamalarına ve düzeltmelerine yardımcı olacak veri toplama yöntemleri de sağlar.

Not

Bu makalede adı geçen üçüncü taraf ürünleri Microsoft'tan bağımsız şirketler tarafından üretilmektedir. Microsoft, bu ürünlerin performansı veya güvenilirliği ile ilgili örtük veya başka türlü hiçbir garanti vermez.

Şunlar için geçerlidir: Windows 10

Sorunu tanımlama

  • Hangi bilgisayar donuyor? Örneğin, etkilenen bilgisayar bir fiziksel sunucu veya sanal sunucudur.
  • Donduğunda hangi işlem oldu? Örneğin, bu sorun kapattığınızda oluşur.
  • Hatalar ne sıklıkta oluşur? Örneğin, bu sorun her gece saat 19:00'da oluşur.
  • Bu donma kaç bilgisayarda gerçekleşir? Örneğin, tüm bilgisayarlar veya yalnızca bir bilgisayar.

Dondurma sorunlarını giderme

Dondurma sorunlarını gidermek için bilgisayarınızın geçerli durumunu denetleyin ve aşağıdaki yöntemlerden birini izleyin.

Hala donmuş durumda çalışan bilgisayar için

Fiziksel bilgisayar veya sanal makine hala donuyorsa, sorun giderme için aşağıdaki yöntemlerden birini veya daha fazlasını kullanın:

  • Uzak masaüstü bağlantısı üzerinden bilgisayara erişmeyi deneyin.
  • Donanım üreticisinin uzaktan erişim çözümüyle bilgisayarda oturum açmak için bir etki alanı hesabı veya yerel yönetici hesabı kullanın. Örneğin, Dell Uzaktan Erişim Kartı (DRAC), HP Integrated Lights-Out (iLo) veya IBM Uzaktan gözetmen bağdaştırıcısı (RSA).
  • Bilgisayara ping testi. Bırakılan paketleri ve yüksek ağ gecikme süresini arayın.
  • Yönetici paylaşımları, örneğin \\SunucuAdı\c$ erişimi.
  • Ctrl+Alt+Delete tuşlarına basın ve yanıtı denetleyin.
  • Windows uzaktan yönetim araçlarını kullanmayı deneyin. Örneğin, Bilgisayar Yönetimi, Sunucu Yöneticisi ve Wmimgmt.msc.

Artık dondurulmadıysa bilgisayar için

Fiziksel bilgisayar veya sanal makine donduysa ancak şimdi iyi durumda çalışıyorsa, sorun giderme için aşağıdaki yöntemlerden birini veya daha fazlasını kullanın.

Fiziksel bir bilgisayar için

  • Sorunu yaşayan bilgisayardan Sistem ve Uygulama günlüklerini gözden geçirin. İlgili Olay Kimliği için olay günlüklerini denetleyin:

    • Uygulama olay günlüğü: Kilitlenme veya ilgili sistem işlemini öneren Uygulama Hatası
    • Sistem Olay günlükleri, Kritik sistem hizmetleri için Hizmet Denetim Yöneticisi Hata olayı kimlikleri
    • Kaynak Srv/Server ile Hata Olay Kimlikleri 2019/2020
  • komutunu çalıştırarak perfmon /reportbir Sistem Tanılama raporu oluşturun.

Sanal makine için

  • Sorun yaşayan bilgisayardan Sistem ve Uygulama günlüklerini gözden geçirin.
  • komutunu çalıştırarak perfmon /reportbir Sistem Tanılama raporu oluşturun.
  • Sanal yönetim izleme araçlarında sistemin geçmişini denetleyin.

Dondurma sorunları için veri toplama

Sunucu donması için veri toplamak için aşağıdaki tabloyu denetleyin ve önerilen yöntemlerden birini veya daha fazlasını kullanın.

Bilgisayar türü ve durumu Veri toplama yöntemi
Donmuş durumda çalışan fiziksel bir bilgisayar Veri toplamak için bellek dökümü dosyası kullanın. Ya da yöntem 2, 3 veya 4 kullanın. Bu yöntemler bu bölümün ilerleyen bölümlerinde listelenmiştir.
Artık dondurulmasa da fiziksel bir bilgisayar Yöntem 1, 2, 3 veya 4 kullanın. Bu yöntemler bu bölümün ilerleyen bölümlerinde listelenmiştir. Ayrıca veri toplamak için Havuz İzleyicisi'ni kullanın.
Donmuş durumda çalışan bir sanal makine Hyper-V veya VMware: Donmuş durumda çalışan sanal makine için veri toplamak için bellek dökümü dosyası kullanın.
XenServer: 1, 2, 3 veya 4 yöntemini kullanın. Bu yöntemler bu bölümün ilerleyen bölümlerinde listelenmiştir.
Artık dondurulmuş olmayan bir sanal makine Yöntem 1, 2, 3 veya 4 kullanın. Bu yöntemler bu bölümün ilerleyen bölümlerinde listelenmiştir.

Yöntem 1: Bellek dökümü

Önemli

Bu bölümdeki adımları dikkatlice izleyin. Kayıt defterini hatalı olarak değiştirirseniz önemli sorunlar oluşabilir. Değiştirmeden önce, bir sorun olması halinde geri yükleyebilmek için kayıt defterini yedekleyin.

Tam bellek dökümü dosyası, bilgisayar beklenmedik bir şekilde durduğunda sistem belleğinin tüm içeriğini kaydeder. Tam bellek dökümü dosyası, bellek dökümü dosyası toplandığında çalıştırılan işlemlerden veriler içerebilir.

Bilgisayar artık donmuyorsa ve şimdi iyi durumda çalışıyorsa, dondurma sorunu yeniden oluştuğunda bellek dökümünü toplayabilmeniz için bellek dökümünü etkinleştirmek için aşağıdaki adımları kullanın. Sanal makine hala donmuş durumda çalışıyorsa bellek dökümünü etkinleştirmek ve toplamak için aşağıdaki adımları kullanın.

Not

Bilgisayarda, Compaq bilgisayarlarındaki Otomatik Sistem Yeniden Başlatma (ASR) özelliği gibi etkinleştirilmiş bir yeniden başlatma özelliğine sahipseniz, bu özelliği devre dışı bırakın. Bu ayar genellikle BIOS'ta bulunur. Bu özellik etkinleştirildiğinde, BIOS işletim sisteminden bir sinyal algılamazsa bilgisayarı yeniden başlatır. Yeniden başlatma, döküm işlemini kesintiye uğratabilir.

  1. Bilgisayarın tam bir bellek dökümü dosyası alacak şekilde ayarlandığından emin olun.

    1. Çalıştır'a gidin ve Sysdm.cplgirin ve enter tuşuna basın.
    2. Sistem Özellikleri'ndekiGelişmiş sekmesinde Performans>Ayarları>Gelişmiş'i seçin. Sanal belleği denetlemek veya değiştirmek için Değiştir'i seçin.
    3. Başlangıç ve Kurtarma'daSistem Özellikleri>Gelişmiş>Ayarları'na Geri dön.
    4. Hata Ayıklama Bilgilerini Yazma bölümünde Bellek Dökümünü Tamamla'yı seçin.
    5. Varolan dosyaların üzerine yaz'ı seçin.
    6. Sistem sürücüsünde bir disk belleği dosyası (pagefile.sys) olduğundan ve yüklü RAM(Başlangıç ve Maksimum Boyut) üzerinden en az 100 MB olduğundan emin olun.
    7. Sistem sürücüsünde fiziksel RAM'den daha fazla kullanılabilir alan olduğundan emin olun.
  2. Sistemin klavyeyi kullanarak döküm dosyası oluşturmasına izin vermek için kayıt defteri değerini etkinleştirin CrashOnCtrlScroll .

    1. Kayıt Defteri Düzenleyici açın ve aşağıdaki kayıt defteri anahtarlarını bulun:

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters
    2. İki kayıt defteri anahtarında aşağıdaki CrashOnCtrlScroll kayıt defteri girdisini oluşturun:

      • Değer Adı: CrashOnCtrlScroll
      • Veri Türü: REG_DWORD
      • Değer: 1
    3. Kayıt Defteri Düzenleyici kapatın ve bilgisayarı yeniden başlatın.

  3. Windows'un önceki sürümlerini çalıştıran bazı fiziksel bilgisayarlarda, DRAC, iLo veya RSA gibi bir web arabirimi özelliğinden çıkarılamaz bir kesinti (NMI) oluşturabilirsiniz. Ancak, varsayılan olarak bu ayar bellek dökümü oluşturmadan sistemi durdurur.

    Not

    Şu anda desteklenen Windows NMICrashDump sürümleri için kayıt defteri anahtarı artık gerekli değildir. NMI, bellek dökümü veri toplamasını izleyen bir Durdurma hatasına neden olur.

  4. Bilgisayar sorunu gösterdiğinde, sağ Ctrl tuşunu basılı tutun ve bellek dökümü dosyası oluşturmak için Kaydırma Kilidi tuşuna iki kez basın.

    Not

    Döküm dosyası varsayılan olarak şu yolda bulunur: %SystemRoot%\MEMORY. DMP.

Yöntem 2: Veri akıl sağlığı denetimi

Bellek dökümü dosyasını okumak için Döküm Denetimi Yardımcı Programı'nı (Dumpchk.exe) kullanın. Ayrıca dosyanın doğru oluşturulduğunu ve bozuk veya geçersiz olmadığını doğrulayabilir.

Döküm dosyalarınızı denetlemek için Dumpchk.exe kullanmayı öğrenin:

Yöntem 3: Performans İzleyicisi

Çalıştırdığınız programların bilgisayarınızın performansını nasıl etkilediğini incelemek için windows Performans İzleyicisi kullanabilirsiniz. Hem gerçek zamanlı olarak hem de daha sonra analiz için günlük verilerini toplayabilirsiniz. Yerel ve uzak sistemlerde performans sayacı ve olay izleme günlüğü koleksiyonları oluşturmak için, bir komut isteminde yönetici olarak aşağıdaki komutları çalıştırın:

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

Ardından, aşağıdaki komutları çalıştırarak günlüğü başlatabilir veya durdurabilirsiniz:

logman start LOGNAME_Long / LOGNAME_Short
logman stop LOGNAME_Long / LOGNAME_Short

Performans İzleyicisi günlüğü şu yolda bulunur: C:\PERFLOGS.

Veri toplamaya yönelik diğer yöntemler

Donmuş durumda çalışan fiziksel bilgisayarın verilerini toplamak için bellek dökümünü kullanma

Uyarı

Bu bölümdeki adımları dikkatlice izleyin. Kayıt defterini hatalı olarak değiştirirseniz önemli sorunlar oluşabilir. Değiştirmeden önce, bir sorun olması halinde geri yükleyebilmek için kayıt defterini yedekleyin.

Fiziksel bilgisayar hala donmuş durumda çalışıyorsa bellek dökümünü etkinleştirmek ve toplamak için şu adımları izleyin:

  1. Bilgisayarın tam bir bellek dökümü dosyası alacak şekilde ayarlandığından ve bu dosyaya ağ üzerinden erişebildiğinizden emin olun.

    Not

    Etkilenen bilgisayara ağ üzerinden erişmek mümkün değilse, NMI aracılığıyla bir bellek dökümü dosyası oluşturmayı deneyin. Aşağıdaki ayarlardan bazıları uygun değilse eylemin sonucu bellek dökümü dosyası toplamayabilir.

    1. Herhangi bir yolla bilgisayarın masaüstüne erişmeyi deneyin.

      Not

      İşletim sistemine erişim mümkün değilse, bilgisayardaki Kayıt Defteri Düzenleyici uzaktan erişmeyi deneyin. Daha sonra, bilgisayarın şu anda yapılandırıldığı bellek dökümü dosyasının ve sayfa dosyasının türünü de kontrol edebilirsiniz.

    2. Tercihen aynı ağ ve alt ağda bulunan uzak bir bilgisayardan Kayıt Defteri Düzenleyici>Bağlan ağ kayıt defteri'ne gidin. Ardından, etkilenen bilgisayara bağlanın ve aşağıdaki ayarları doğrulayın:

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

        CrashDumpEnabled kayıt defteri girdisinin 1 olduğundan emin olun.

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

        Bazı fiziksel sunucularda, NMICrashDump kayıt defteri girdisi varsa ve değeri 1 ise, DRAC, iLo ve RSA gibi uzaktan yönetim sağlayıcısından NMI'den yararlanabilirsiniz.

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

        Kayıt defteri girdisinin Pagefile değeri sistem tarafından yönetiliyorsa, boyut kayıt defterine yansıtılamaz. Örneğin, ?:\pagefile.sys)

        Sayfa dosyası özelleştirilmişse, boyut kayıt defterine yansıtılır, örneğin ?:\pagefile.sys 1024 1124. Bu örnekte, 1024 ilk boyut ve 1124 en büyük boyutdur.

        Not

        Boyut Kayıt Defteri'ne yansıtılmıyorsa, sayfa dosyasının bulunduğu bir yönetim paylaşımına erişmeyi deneyin. Örneğin, \\SunucuAdı\C$.

    3. Bilgisayarın sistem sürücüsünde bir disk belleği dosyası (pagefile.sys) olduğundan ve yüklü RAM üzerinden en az 100 MB olduğundan emin olun.

    4. Bilgisayarın sabit disk sürücülerinde fiziksel RAM'den daha fazla boş alan olduğundan emin olun.

  2. Sistemin klavyeyi kullanarak döküm dosyası oluşturmasına izin vermek için bilgisayardaki CrashOnCtrlScroll kayıt defteri değerini etkinleştirin.

    1. Tercihen aynı ağ ve alt ağda bulunan uzak bir bilgisayardan Kayıt Defteri Düzenleyici>Bağlan ağ kayıt defteri'ne gidin. Etkilenen bilgisayara bağlanın ve aşağıdaki kayıt defteri anahtarlarını bulun:

      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters
    2. İki kayıt defteri anahtarında aşağıdaki CrashOnCtrlScroll kayıt defteri girdisini oluşturun:

      Değer Adı: CrashOnCtrlScroll Veri Türü: REG_DWORD Değer: 1

    3. Kayıt Defteri Düzenleyici kapatın ve bilgisayarı yeniden başlatın.

  3. Bilgisayar sorunu gösterdiğinde, sağ Ctrl tuşunu basılı tutun ve bellek dökümü oluşturmak için Kaydırma Kilidi tuşuna iki kez basın.

    Not

    Döküm dosyası varsayılan olarak şu yolda bulunur: %SystemRoot%\MEMORY. DMP.

Artık dondurulmayan fiziksel bilgisayarın verilerini toplamak için Havuz İzleyicisi'ni kullanma

Havuz İzleyicisi, ayırma sayısını ve havuz türüne göre kalan ayırma baytlarını ve ExAllocatePoolWithTag çağrılarına geçirilen etiketi gösterir.

Daha fazla bilgi için bkz. Kernel-Mode Bellek Sızıntısı Bulmak için PoolMon Kullanma ve PoolMon Örnekleri.

Donmuş durumda çalışan sanal makine için veri toplamak için bellek dökümünü kullanma

Sanal makinenin üzerinde çalıştığı uygulama için aşağıdaki yöntemlerden birini kullanın.

Microsoft Hyper-V

Ayrıca, hata ayıklamak ve bellek dökümü almak için Debug-VM cmdlet'i aracılığıyla yerleşik NMI özelliğini de kullanabilirsiniz.

Hyper-V üzerindeki sanal makinelerde hata ayıklamak için Windows PowerShell'de aşağıdaki cmdlet'i çalıştırın:

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

Vmware

VMware anlık görüntülerini kullanabilir veya durumu askıya alabilir ve tam bir bellek dökümü dosyasına eşdeğer bir bellek dökümü dosyası ayıklayabilirsiniz. Hem askıya alma () hem de anlık görüntü (.vmss) durum dosyalarını döküm dosyasına dönüştürmek için VMware'in Denetim Noktası Çekirdek Aracı'nı (.vmsnvmss2core) kullanın. Ardından standart Windows hata ayıklama araçlarını kullanarak dosyayı analiz edin.

Citrix XenServer

Bellek dökümü işlemi, Sağ Ctrl+Scroll Lock+Scroll Lock klavye bileşimine basılarak gerçekleşir. Daha fazla bilgi için bkz. Citrix'ten XenServer Üzerinde Çalışan Bir Windows Sanal Makinesinden Bellek Dökümü Tetikleme yöntemi 1.

Windows Server'da sistem sürücüsünde alan sınırlamaları

Windows Server'da, sistem biriminde eksiksiz bir bellek dökümü dosyası oluşturmak için yeterli boş disk alanınız olmayabilir.

Sistem sürücüsünde yeterli alan yoksa ikinci bir seçenek vardır. DedicatedDumpFile kayıt defteri girdisini kullanabilirsiniz. Daha fazla bilgi için bkz. Bellek dökümü için hedef yolu yapılandırma.

Daha fazla bilgi için bkz. Sistem sürücüsündeki alan sınırlamalarını aşmak için DedicatedDumpFile kayıt defteri değerini kullanma.