DISM Nedir?​

DISM (Deployment Image Servicing and Management, Windows'un sistem görüntüsünü onarmak için kullanılan bir komut satırı aracıdır. "Sistem görüntüsü" dediğimiz şey, Windows'un çekirdeğini, temel bileşenlerini ve çalışması için gereken tüm kritik dosyaları içeren yapıdır. Bu yapı bozulduğunda Windows kararsızlaşır, güncellemeler yüklenmez veya beklenmedik hatalar oluşur. DISM ise bozuk dosyaları tespit eder, sağlıklı olanlarla değiştirir ve sistemin temelini yeniden sağlamlaştırır.

DISM'nin "SFC /scannow" komutundan farkı nedir?​

SFC (System File Checker), Windows'un çalışır durumdaki dosyalarını tarar ve bozuk veya değiştirilmiş olanları düzeltir. Ancak SFC yalnızca sistemin aktif halde kullandığı dosyalar üzerinde çalışır.

DISM ise bir seviye daha derine iniyor. Çalışan sistemdeki dosyalar yerine, Windows'un "kök imajını" kontrol ediyor ve bozukluk varsa kaynağından tamir etmeye çalışıyor. Eğer kök imaj bozuksa, SFC zaten dosyaları doğru şekilde onaramaz. Bu yüzden, bu noktada DISM daha kritik ve kapsamlı diyebiliriz.

Kısaca fark:
  • SFC: Şu an kullanılan dosyaları onarır.
  • DISM: Windows’un çekirdek imajını onarır.
  • Sıra: Genelde önce DISM, sonra SFC çalıştırılır.

DISM hangi sorunları çözer?​

Windows'un temel bileşenlerinde oluşan bozulmaları gideriyor. Bu bozulmalar genelde güncellemelerin yarım kalması, hatalı kurulumlar, üçüncü parti yazılımların sisteme müdahalesi veya uzun süreli kullanım sonucu ortaya çıkan bozulmalar. Şunları örnek olarak gösterebiliriz:
  • Windows Update hataları (0x800f081f, 0x800f0905 gibi)
  • SFC'nin düzeltemediği bozuk sistem dosyaları
  • Başlat menüsü, Ayarlar, Görev Çubuğu gibi temel bileşenlerin bozulması
  • Güncelleme yüklenmemesi veya sürekli başarısız olması
  • Windows'un kendi bileşen mağazasının (Component Store) bozulması
  • Sistem dosyalarının eksik veya yanlış sürümde olması
  • "Bazı Windows özellikleri yüklenemiyor" tarzı hatalar
  • DISM loglarında görülen component store corruption (bozulma) uyarıları

DISM komutları nelerdir ve ne işe yararlar?​

KomutNe işe yarar?
/OnlineMevcut çalışan Windows üzerinde işlem yapar.
/Image:X:Başka bir Windows imajı veya sürücüsü üzerinde işlem yapar.
/Cleanup-Image /CheckHealthBilinen bozulma var mı hızlıca kontrol eder.
/Cleanup-Image /ScanHealthDaha detaylı bozulma taraması yapar.
/Cleanup-Image /RestoreHealthBozuk sistem dosyalarını onarır.
/RestoreHealth /Source:X:\Onarma dosyalarını ISO veya klasörden alır, internete gerek yoktur.
/StartComponentCleanupGüncelleme artıklarını siler, sistemi hafifletir.
/AnalyzeComponentStoreWinSxS klasörünün ne kadar şiştiğini analiz eder.
/Get-PackagesYüklü Windows paketlerini listeler.
/Remove-Package /PackageName:Belirli bir Windows güncellemesini veya paketi kaldırır.
/Get-FeaturesTüm Windows özelliklerini listeler.
/Get-FeatureInfo /FeatureName:Bir özelliğin ayrıntılarını görüntüler.
/Enable-Feature /FeatureName:Windows özelliğini aktif eder.
/Disable-Feature /FeatureName:Windows özelliğini kapatır.
/Get-DriversSistemdeki tüm sürücüleri gösterir.
/Export-Driver /Destination:Sürücüleri dışarı aktarır (yedekleme).
/Add-Driver /Driver:Yeni sürücü ekler.
/Remove-Driver /Driver:Sürücü kaldırır.
/Get-MountedWimInfoMount edilmiş WIM dosyalarını gösterir.
/Mount-Wim /WimFile:Bir WIM dosyasını düzenlemek için bağlar.
/Unmount-Wim /CommitDeğişiklikleri kaydederek kapatır.
/Unmount-Wim /DiscardKaydetmeden kapatır.
/Append-Image /ImageFile:WIM dosyasına yeni bir imaj ekler.
/Apply-ImageBir imajı diske uygular.
/Capture-ImageBir sürücünün imajını alır (WIM oluşturur).
/Get-IntlDil ve bölge ayarlarını gösterir.
/Set-UILang /UILang:Arayüz dilini değiştirir.
/Set-TimeZone:Saat dilimini ayarlar.
/Get-TargetEditionsYükseltilebilecek Windows sürümlerini gösterir.
/Set-Edition:Windows sürümünü değiştirir (Home → Pro gibi).
/Get-AppXProvisionedPackagesKurulumda otomatik yüklenecek uygulamaları listeler.
/Remove-AppXProvisionedPackageVarsayılan uygulamaları imajdan çıkarır (bloatware temizliği).
/Add-ProvisionedAppxPackageVarsayılan uygulama ekler.
/Enable-ProvisionedAppxPackagesDevre dışı AppX paketlerini yeniden etkinleştirir.
/Get-CapabilitiesEk sistem yeteneklerini listeler (OpenSSH vb.).
/Add-CapabilityYeni bir sistem yeteneği ekler.
/Remove-CapabilityBir sistemi özelliğini kaldırır.
/LogLevel:DISM’in log detay seviyesini ayarlar.
/ScratchDir:Geçici çalışma klasörünü değiştirir (disk azsa işe yarar).
/NoRestartİşlem bittiğinde otomatik yeniden başlatmayı engeller.
/LimitAccessİnternet erişimini kısıtlayarak yalnızca yerel kaynakları kullanır.

KomutNe işe yarar?
DISM /Online /Cleanup-Image /CheckHealthSistemde bilinen, daha önce Windows tarafından fark edilmiş bir bozulma var mı ona bakar.
DISM /Online /Cleanup-Image /ScanHealthWindows imajını ayrıntılı tarar ve gizli bozulma var mı diye inceler. Bu biraz uzun sürebilir.
DISM /Online /Cleanup-Image /RestoreHealthBozuk dosyalar varsa Microsoft’un sağlam kaynaklarından indirip onarır.
DISM /Online /Cleanup-Image /RestoreHealth /"kaynak dosya/ISO konumu"\sources\install.wimAynı tamir işlemini yapar ama onarma dosyalarını internetten değil, senin verdiğin ISO içinden alır.
DISM /Online /Cleanup-Image /StartComponentCleanupGüncelleme artıklarını temizleyerek disk alanı açar.
DISM /Online /Cleanup-Image /AnalyzeComponentStoreWinSxS klasörünün ne kadar şiştiğini, temizlik gerekip gerekmediğini söyler.
DISM /Online /Get-PackagesSistemde yüklü olan tüm Windows paketlerini listeler.
DISM /Online /Remove-Package /PackageName:PACKAGE_ADIGüncelleme veya paketleri kaldırmanıza yarar.
DISM /Online /Get-FeaturesWindows özelliklerini listeler.
DISM /Online /Enable-Feature /FeatureName:XXXXXWindows özelliklerini açamanızı sağlar. Örnekğin ".NET Framework 3.5'i" etkinleştirebilirsiniz.
DISM /Online /Disable-Feature /FeatureName:XXXXXWindows özelliklerinizi kapatmanızı sağlar.
DISM /Online /Get-DriversSistemdeki sürücüleri listeler.
DISM /Online /Export-Driver /Destination:C:\DriverBackupSürücüyü yedekleme komutudur.
DISM /Online /Add-Driver /Driver:C:\Drivers\mydriver.infYeni bir sürücü yüklemek için kullanılan bir komuttur.
DISM /Apply-Image /ImageFile:D:\install.wim /Index:1 /ApplyDir:C:\Windows imaj dosyasını (WIM) manuel olarak belirli bir sürücüye uygulamak/yüklemek için kullanılır.
DISM /Capture-Image /ImageFile:D:\backup.wim /CaptureDir:C:\ /Name:WindowsBackupBir sürücünün yedeğini alıp bir imaj dosyası (.wim) oluşturur.
DISM /Online /Get-IntlŞu anda çalışmakta olan Windows sisteminizin uluslararası ayarlarını ve dil yapılandırmasını listeler.
DISM /Online /Set-UILang:xx-XXŞu anda çalışan Windows sisteminin varsayılan görüntüleme dilini değiştirir.
DISM /Online /Set-TimeZone:"xx"Şu anda çalışan Windows sisteminizin saat dilimini (Time Zone) ayarlar
DISM /Online /Get-TargetEditionsŞu anda çalışan Windows sürümünüzü, format atmadan yükseltebileceğiniz diğer Windows sürümlerini listeler.
DISM /Online /Set-Edition:Professional /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXXWindows sürümünüzü (örneğin Home), format atmaya veya yeniden kurulum yapmaya gerek kalmadan Windows Professional sürümüne yükseltir. Ancak etkinleştirme anahtarı gereklidir.
DISM /Online /Get-AppXProvisionedPackagesBilgisayarınızda yüklü olan ancak henüz bir kullanıcı hesabına atanmamış (sisteme gömülü) Windows Mağazası (UWP/AppX) uygulamalarının listesini verir.
DISM /Online /Remove-AppXProvisionedPackage /PackageName:PACKAGE_ADIWindows sistem imajından belirli bir "yerleşik" (provisioned) uygulamayı tamamen silmek için kullanılır.
DISM /Online /Add-ProvisionedAppxPackage /PackagePath:C:\App\Appx.appxBir önceki silme komutunun tam tersidir. Bir Windows Mağazası uygulamasını (AppX, AppxBundle, MSIX) dışarıdan bir dosya kullanarak sisteme gömmek (provisioning) için kullanılır.
DISM /Online /Get-CapabilitiesWindows'un "İsteğe Bağlı Özellikler" olarak adlandırdığı bileşenlerin listesini ve durumlarını (yüklü olup olmadıklarını) gösterir.
DISM /Online /Add-Capability /CapabilityName:xxxWindows'a "İsteğe Bağlı Özellik" (Feature on Demand) yüklemek için kullanılır.
DISM /Online /Remove-Capability /CapabilityName:xxxWindows'ta yüklü olan bir "İsteğe Bağlı Özelliği" sistemden kaldırmak için kullanılır.
DISM /Online /Set-LogLevel:3DISM aracının işlemler sırasında oluşturduğu kayıt dosyasının (log) detay seviyesini belirler.
DISM /Online /Cleanup-Image /RestoreHealth /ScratchDir:D:\TempWindows sistem dosyalarındaki bozulmaları onarmaya çalışır, ancak bu işlemi yaparken sistem sürücüsü "C:" yerine farklı bir diskteki geçici klasörü (D:\Temp) kullanır.
DISM /Online /Enable-Feature /FeatureName:TelnetClient /NoRestartWindows'un içinde "uykuda" bekleyen Telnet İstemcisi özelliğini aktif hale getirir ve işlem bittiğinde bilgisayarın yeniden başlatılmasını isterse bunu engeller.
DISM /Online /Cleanup-Image /RestoreHealth /LimitAccess /Source:D:\sources\install.wimWindows sistem dosyalarındaki bozulmaları onarmak için kullanılır, ancak en önemli özelliği Windows Update'i (İnterneti) tamamen devre dışı bırakarak, onarım dosyalarını yerel bir kaynaktan (USB bellek veya ISO dosyası) almasıdır.

DISM komutları ile Windows nasıl onarılır?​

  1. Başlat menüsüne CMD veya PowerShell yazıp yönetici olarak çalıştırın.
  2. Öncelikle durum kontrolü (CheckHealth) yapacağız. Bu komut hızlıdır; sistemde bozulma olup olmadığını sadece kontrol eder, onarım yapmaz. Kullanacağımız komut: DISM /Online /Cleanup-Image /CheckHealth
  3. Daha sonra derinlemesine tarama (ScanHealth) yapacağız. Windows görüntüsünde herhangi bir bozulma olup olmadığını detaylıca tarar. İşlem birkaç dakika sürebilir. Kullanacağımız komut: DISM /Online /Cleanup-Image /ScanHealth
  4. Sonrasında onarım işlemini (RestoreHealth) yapacağız. Bu adım en kritik adımdır Bozuk dosyaları Windows Update üzerinden indirerek onarır. İnternet bağlantınızın aktif olduğundan emin olun. Kullanacağımız komut: DISM /Online /Cleanup-Image /RestoreHealth
    Bu işlem uzun sürer, işlem sürecinde bazı durumlarda takıldı gibi hissedebilirsiniz sabırla bekleyiniz.
  5. Tüm bu işlemler sonucunda DISM, sistem görüntüsünü onarır. Bu kaynak düzeldikten sonra, sistem dosyalarınızı bu kaynaktan yenilemek için son bir komut girmeniz gerekecek: sfc /scannow
  6. Artık sistemi yeniden başlatabilirsiniz.

DISM ile onarım yaparken hata aldım, ne yapmalıyım?​

Genelde yaygın bir senaryo olan "Kaynak Dosyaları Bulunamadı" (Error 0x800f081f) hatası alınabiliyor. Bu hata genelde Windows Update'in hatalı dosyaları tamamlayamaması durumunda alınan bir hata. Bu bağlamda ISO dosyası indirerek onarım yapmayı deneyebiliriz.

İzlememiz gereken adımlar şöyle:
  1. Windows 10/11 ISO dosyasını edinin.





  2. ISO dosyasını indirdikten sonra ISO dosyasına sağ tıklayın ve "Bağla" seçeneğini kullanın.
  3. Bilgisayarım'a girin ve sanal disk olarak eklenen bu ISO'nun sürücü harfini not edin (Örneğin F: veya E: olabilir).
  4. Bağlanan diskin içine girin ve "sources" klasörünü açın.
  5. Burada "install.wim" veya "install.esd" adında büyük boyutlu bir dosya olup olmadığını kontrol edin. (Bu dosya bizim onarım kaynağımız olacak).
  6. Kontroller bittikten sonra CMD veya PowerShell'i yönetici olarak çalıştırın.
  7. Dosya adınız "install.wim" ise
    DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:X:\sources\install.wim:1 /LimitAccess ("X:" kısmına kendi sürücü harifinizi yazın.)
    "install.esd" ise
    DISM /Online /Cleanup-Image /RestoreHealth /Source:ESD:X:\sources\install.esd:1 /LimitAccess ("X:" kısmına kendi sürücü harifinizi yazın.)
    yazın ve işlemlerin bitmesini bekleyin.
Burada girdiğimiz komutlar şu anlama gelmiş oluyor:
  • /Source: Windows'a internet yerine bizim gösterdiğimiz yerel dosyayı kaynak almasını söylüyor.
  • /LimitAccess: Bu işlemi yaparken Windows Update'i tamamen devre dışı bırakmasını ve sadece gösterdiğimiz dosyayı kullanması konusunda zorluyor. Böylece internet kaynaklı hataların önüne geçmenizi sağlıyor.
  • :1: Bu ise ISO içindeki Windows sürümünün indeks numarasıdır. Genellikle "1" standarttır ancak çoklu sürüm içeren ISO'larda bu sayı değişebilir. Bu kod sisteminizdeki sürüm ile eşleşmez ise sorun çıkarabilir.
    Eğer ISO dosyanız birden fazla Windows sürümü içeriyor ise içindeki sürümlerin kodlarını şöyle öğrenmeniz gerekecek:
    • Yine CMD veya PowerShell'i yönetici olarak çalıştırıyoruz.
    • "install.wim" için
      dism /Get-WimInfo /WimFile:X:\sources\install.wim yazıp enter'a basıyoruz. ("X:" kısmına kendi sürücü harifinizi yazın.)
      "install.esd" için
      dism /Get-WimInfo /WimFile:X:\sources\install.esd yazıp enter'a basıyoruz. ("X:" kısmına kendi sürücü harifinizi yazın.)
    • Komutu çalıştırdıktan sonra karşınıza bir liste çıkacak. Bu listede "Index" numaraları ve karşısında "Name" bilgileri yer alır. Buradan doğru index numarasını öğrenip ISO ile onarmaya tekrar geçebilirsiniz.