DISM-Befehlszeilenoptionen zur Wartung von Betriebssystempaketen (CAB oder MSU)

Verwenden Sie DISM mit Windows-Kabinettdateien (CAB) oder den eigenständigen Windows Update-Installerdateien (MSU), um Updates und Sprachpakete zu installieren oder zu entfernen und Windows-Features zu aktivieren oder zu deaktivieren. Features sind optionale Komponenten für das Kernbetriebssystem.

Syntax

DISM.exe {/Image:<path_to_image_directory> | /Online} [dism_global_options] {servicing_option} [<servicing_argument>]

Die folgenden Optionen für die Betriebssystempaketwartung sind für ein Offlineimage verfügbar:

DISM.exe /Image:<path_to_image_directory> [/Get-Packages | /Get-PackageInfo | /Add-Package | /Remove-Package ] [/Get-Features | /Get-FeatureInfo | /Enable-Feature | /Disable-Feature ] [/Cleanup-Image]

Die folgenden Optionen für die Betriebssystempaketwartung sind für ein laufendes Betriebssystem verfügbar:

DISM.exe /Online [/Get-Packages | /Get-PackageInfo | /Add-Package | /Remove-Package ] [/Get-Features | /Get-FeatureInfo | /Enable-Feature | /Disable-Feature ] [/Cleanup-Image]

/Get-Help /?

Wenn dieser Befehl unmittelbar nach einer Befehlszeilenoption für die Paketwartung verwendet wird, werden Informationen zu der Option und den Argumenten angezeigt.

Weitere Themen werden möglicherweise verfügbar, wenn ein Bild angegeben wird.

Syntax:

Dism /Get-Help 

Beispiele:

Dism /Image:C:\test\offline /Add-Package /?
Dism /Online /Get-Packages /?

/Get-Packages

Dieser Befehl zeigt grundlegende Informationen zu allen Paketen im Image an. Verwenden Sie das Argument /Format:Table oder /Format:List, um die Ausgabe in Form einer Tabelle oder einer Liste anzuzeigen.

Syntax:

Dism /Get-Packages [/Format:{Table | List}]

Beispiele:

Dism /Image:C:\test\offline /Get-Packages
Dism /Image:C:\test\offline /Get-Packages /Format:Table
Dism /Online /Get-Packages

/Get-PackageInfo

Über diesen Befehl werden ausführliche Informationen zu einem Paket angezeigt, das als CAB-Datei bereitgestellt wird. Nur CAB-Dateien können angegeben werden. Sie können diesen Befehl nicht verwenden, um Paketinformationen für MSU-Dateien zu erhalten. /PackagePath:<path_to_package> kann entweder auf eine CAB-Datei oder einen Ordner verweisen.

Sie können die /Get-Packages-Option verwenden, um den Namen des Pakets im Image zu finden, oder Sie können den Pfad zur CAB-Datei angeben. Der Pfad zur CAB-Datei sollte auf die ursprüngliche Quelle des Pakets verweisen, nicht auf den Ort, an dem die Datei auf dem Offlineimage installiert ist.

Syntax:

Dism /Get-PackageInfo {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}

Beispiele:

Dism /Image:C:\test\offline /Get-PackageInfo /PackagePath:C:\packages\package.cab
Dism /Image:C:\test\offline /Get-PackageInfo /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Add-Package

Dieser Befehl installiert ein angegebenes CAB- oder MSU-Paket im Image.

Hinweis

Sie können /Add-Package verwenden, um ein MSU-Paket zu einem Online- oder Offlineimage von Windows 11, Version 21H2 oder höher hinzuzufügen. Wenn Sie mit einem Windows-Image vor Windows 11 Version 21H2 arbeiten, können Sie MSU-Pakete nur auf Offline-Zielimages hinzufügen.

Mehrere Pakete können über eine Befehlszeile hinzugefügt werden. Die Anwendbarkeit jedes Pakets wird überprüft. Wenn das Paket nicht auf das angegebene Image angewendet werden kann, wird eine Fehlermeldung generiert. Verwenden Sie das /IgnoreCheck-Argument, wenn der Befehl ohne Überprüfung der Anwendbarkeit der einzelnen Pakete ausgeführt werden soll.

Syntax:

Dism /Add-Package /PackagePath:<path_to_cabfile> [/IgnoreCheck] [/PreventPending]
  • /PackagePath kann auf Folgendes verweisen:

    • Eine einzelne CAB- oder MSU-Datei
    • Einen Ordner, der eine einzelne erweiterte CAB-Datei enthält
    • Einen Ordner, der eine einzelne MSU-Datei enthält
    • Einen Ordner, der mehrere CAB- oder MSU-Dateien enthält
  • Wenn /PackagePath auf einen Ordner verweist, der eine CAB- oder MSU-Datei im Stamm enthält, werden alle Unterordner auch rekursiv auf CAB- und MSU-Dateien überprüft.

  • Verwenden Sie die /PreventPending-Option, um die Installation des Pakets zu überspringen, wenn das Paket oder das Windows-Image ausstehende Onlineaktionen aufweist.

Hinweis

/Add-Package führt keine vollständige Überprüfung der Anwendbarkeit und Abhängigkeit eines Pakets aus:

  • Wenn Sie ein Paket mit Abhängigkeiten hinzufügen, stellen Sie sicher, dass alle Abhängigkeiten installiert sind, wenn Sie das Paket hinzufügen.
  • Wenn Sie eine MSU-Datei hinzufügen, überprüfen Sie unbedingt die zugehörige KB auf paketspezifische Installationsanweisungen.

Beispiele:

Dism /Image:C:\test\offline /LogPath:AddPackage.log /Add-Package /PackagePath:C:\packages\package.msu
Dism /Image:C:\test\offline /Add-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab /IgnoreCheck
Dism /Image:C:\test\offline /Add-Package /PackagePath:C:\test\packages\package.cab /PreventPending

Kumulative Updates des Prüfpunkts

Ab Windows 11 Version 24H2 erfordert das neueste kumulative Update möglicherweise ein kumulatives Update, das als Erstes installiert werden muss. Um diese kumulativen Updates für den Prüfpunkt zu installieren, rufen Sie „/Add-Package“ mit dem kumulativen Zielupdate auf. Der Ordner aus „-PackagePath“ wird verwendet, um nach Bedarf einen oder mehrere Prüfpunkte zu ermitteln und zu installieren. Im Ordner „-PackagePath“ sollte sich nur das kumulative Zielupdate und alle erforderlichen kumulativen Updates des Prüfpunkts befinden. Kumulative Updatepakete, die im Vergleich zum kumulativen Zielupdate in geringerem bzw. gleichem Maße überarbeitet wurden, werden verarbeitet.

/Remove-Package

Entfernt eine angegebene CAB-Datei aus dem Image. Nur CAB-Dateien können angegeben werden. Sie können diesen Befehl nicht verwenden, um MSU-Dateien zu entfernen.

Hinweis

Wenn Sie mit diesem Befehl ein Paket aus einem Offlineimage entfernen, wird die Imagegröße nicht verringert.

Syntax:

/Remove-Package {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}
  • Verwenden Sie /PackagePath, um auf die ursprüngliche Quelle des Pakets zu verweisen, den Pfad zur CAB-Datei anzugeben oder das Paket nach Namen anzugeben, so wie es im Image aufgeführt ist. Verwenden Sie die /Get-Packages-Option, um den Namen des Pakets im Image zu finden.

Beispiele:

Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0 /PackageName:Microsoft-Windows-MediaPlayer-Package~31bf3856ad364e35~x86~~6.1.6801.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab

/Get-Features

Damit werden grundlegende Informationen zu allen Features (Betriebssystemkomponenten, die optionale grundlegende Windows-Features enthalten) in einem Paket angezeigt.

Syntax:

/Get-Features {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>} [/Format:{Table | List}]
  • /Get-Features findet den Namen der Pakete im Image oder in der ursprünglichen Quelle des Pakets. Wenn Sie keinen Paketnamen oder Pfad angeben, werden alle Features im Image aufgelistet.
  • /PackageName ist ein Paket in einem Image. Sie können mit /DISM Get-Packages die Paketnamen in einem Image anzeigen.
  • /PackagePath kann entweder auf eine CAB-Datei oder einen Ordner verweisen.

Verwenden Sie das Argument /Format:Table oder /Format:List, um die Ausgabe in Form einer Tabelle oder einer Liste anzuzeigen.

Beispiele:

Dism /Image:C:\test\offline /Get-Features
Dism /Image:C:\test\offline /Get-Features /Format:List
Dism /Image:C:\test\offline /Get-Features /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
Dism /Image:C:\test\offline /Get-Features /PackagePath:C:\packages\package1.cab

/Get-FeatureInfo

Damit werden detaillierte Informationen zu einem Feature angezeigt. Hierzu muss /FeatureName verwendet werden. Sie können die /Get-Features-Option verwenden, um den Namen des Features im Image zu suchen.

Syntax:

/Get-FeatureInfo /FeatureName:<name_in_image> [{/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}]

/PackageName und /PackagePath sind optional und können verwendet werden, um ein bestimmtes Feature in einem Paket zu suchen.

Beispiele:

Dism /Image:C:\test\offline /Get-FeatureInfo /FeatureName:Hearts
Dism /Image:C:\test\offline /Get-FeatureInfo /FeatureName:Hearts /PackagePath:C:\packages\package.cab

/Enable-Feature

Damit wird das angegebene Feature im Image aktiviert oder aktualisiert. Sie müssen die Option /FeatureName verwenden. Verwenden Sie die /Get-Features-Option, um den Namen des Features im Image zu suchen.

Syntax:

/Enable-Feature /FeatureName:<name_in_image> [/PackageName:<name_in_image>] [/Source: <source>] [/LimitAccess] [/All]

Sie können die Option /FeatureName mehrmals in einer Befehlszeile für Features angeben, die das gleiche übergeordnete Paket teilen.

Sie müssen den Paketnamen mit der Option /PackageName nicht angeben, wenn das Paket ein Windows Foundation-Paket ist. Andernfalls können Sie /PackageName verwenden, um das übergeordnete Paket des Features anzugeben.

Sie können ein Feature wiederherstellen und aktivieren, das zuvor aus dem Image entfernt wurde. Geben Sie mit dem Argument /Source den Speicherort der Dateien an, die zum Wiederherstellen des Features erforderlich sind. Die Quelle der Dateien kann durch den Windows-Ordner in einem bereitgestellten Image angezeigt werden, z. B. c:\test\mount\Windows. Sie können auch einen Windows-Querordner als Quelle der Dateien verwenden, z. B. z:\sources\SxS.

Wenn Sie mehrere /Source-Argumente angeben, werden die Dateien von dem ersten Speicherort gesammelt, an dem sie gefunden werden. Die übrigen Speicherorte werden ignoriert. Wenn Sie kein /Source-Argument für ein Feature angeben, das entfernt wurde, wird der Standardspeicherort in der Registrierung verwendet. Für Onlineabbilder wird Windows Update (WU) verwendet.

  • Verwenden Sie /LimitAccess, um zu verhindern, dass DISM sich an WU für Onlineimages wenden kann.
  • Verwenden Sie /All, um alle übergeordneten Features des angegebenen Features zu aktivieren.

Beispiele:

Dism /Online /Enable-Feature /FeatureName:Hearts /All
Dism /Online /Enable-Feature /FeatureName:Calc /Source:c:\test\mount\Windows /LimitAccess
Dism /Image:C:\test\offline /Enable-Feature /FeatureName:Calc /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Disable-Feature

Hiermit wird das angegebene Feature im Image deaktiviert. Sie müssen die Option „/FeatureName“ verwenden. Verwenden Sie die /Get-Features-Option, um den Namen des Features im Image zu suchen.

Syntax:

/Disable-Feature /FeatureName:<name_in_image> [/PackageName:<name_in_image>] [/Remove]

Sie können /FeatureName mehrmals in einer Befehlszeile für Features im selben übergeordneten Paket verwenden.

Sie müssen den Paketnamen nicht mithilfe der Option „/PackageName“ angeben, wenn es sich bei dem Paket um ein Windows Foundation-Paket handelt. Andernfalls können Sie /PackageName verwenden, um das übergeordnete Paket des Features anzugeben.

Verwenden Sie /Remove, um ein Feature zu entfernen, ohne dabei das Featuremanifest aus dem Image zu entfernen. Das Feature wird als „Entfernt“ aufgeführt, wenn Sie /Get-FeatureInfo verwenden, um Featuredetails anzuzeigen. Es kann mithilfe des Features „/Enable“ mit der Option „/Source“ wiederhergestellt und aktiviert werden.

Beispiele:

*Dism /Online /Disable-Feature /FeatureName:Hearts
Dism /Image:C:\test\offline /Disable-Feature /FeatureName:Calc /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Cleanup-Image

Hiermit werden Bereinigungs- oder Wiederherstellungsvorgänge für das Image ausgeführt. /AnalyzeComponentStore und /ResetBase können mit Windows 10-, Windows 8.1- und Windows PE-Images über 5.0 verwendet werden. Ab Windows 10, Version 1607, können Sie /Defer mit /ResetBase angeben, jedoch sollten Sie /Defer ausschließlich als Option in der Factory verwenden, wo für den Abschluss von DISM /Resetbase mehr als 30 Minuten erforderlich sind.

Tipp

Um festzustellen, wann die Option „/ResetBase“ zuletzt ausgeführt wurde, überprüfen Sie den Registrierungseintrag LastResetBase_UTC im HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing-Registrierungspfad.

Syntax:

/Cleanup-Image {/RevertPendingActions | /SPSuperseded [/HideSP] | /StartComponentCleanup [/ResetBase [/Defer]] | /AnalyzeComponentStore | /CheckHealth | /ScanHealth | /RestoreHealth [/Source: <filepath>] [/LimitAccess]}
Parameter Beschreibung
/RevertPendingActions Bei einem Startfehler können Sie die Option „/RevertPendingActions“ verwenden, um zu versuchen, das System wiederherzustellen. Der Vorgang macht alle ausstehenden Aktionen aus den vorherigen Wartungsvorgängen rückgängig, da diese Aktionen möglicherweise die Ursache des Startfehlers sind. Die Option „/RevertPendingActions“ wird nicht auf einem ausgeführten Betriebssystem oder in einem Windows PE- oder Windows-Wiederherstellungsumgebungsimage (Windows RE) unterstützt. Wichtig: Sie sollten die Option „/RevertPendingActions“ nur in einem Systemwiederherstellungsszenario auf einem Windows-Image verwenden, das nicht gestartet wurde.
SPSuperseded Hiermit werden alle Sicherungsdateien entfernt, die während der Installation eines Service Packs erstellt wurden. Verwenden Sie „/HideSP“, um zu verhindern, dass das Service Pack unter „Installierte Updates“ in der Systemsteuerung aufgeführt wird. Dieses Service Pack kann nach Abschluss des /SPSuperseded-Vorgangs nicht mehr deinstalliert werden.
/StartComponentCleanup Hiermit werden die ersetzten Komponenten bereinigt, und die Größe des Komponentenspeichers wird reduziert Verwenden Sie „/ResetBase“, um die Basis der ersetzten Komponenten zurückzusetzen, wodurch die Größe des Komponentenspeichers weiter reduziert werden kann. Installierte Windows-Updates können nach dem Ausführen von /StartComponentCleanup mit der Option „/ResetBase“ nicht deinstalliert werden. Verwenden Sie „/Defer“ mit „/ResetBase“, um bereinigte Vorgänge mit langer Ausführung bis zur nächsten automatischen Wartung zurückzustellen.
/AnalyzeComponentStore Hiermit wird ein Bericht des Komponentenspeichers erstellt. Weitere Informationen zum Bericht und zur Verwendung der im Bericht bereitgestellten Informationen finden Sie unter Ermitteln der tatsächlichen Größe des WinSxS-Ordners.
/CheckHealth Hiermit wird überprüft, ob das Image durch einen fehlerhaften Prozess als beschädigt gekennzeichnet wurde und ob die Beschädigung repariert werden kann.
/ScanHealth Hiermit wird das Image auf Beschädigungen des Komponentenspeichers überprüft. Dieser Vorgang dauert einige Minuten.
/RestoreHealth Hiermit wird das Image auf Beschädigungen des Komponentenspeichers überprüft, und automatische Reparaturvorgänge werden daraufhin durchgeführt. Dieser Vorgang dauert einige Minuten.
/Source Dieser Parameter wird mit „/RestoreHealth“ verwendet, um den Speicherort bekannter guter Dateiversionen anzugeben, die für die Reparatur verwendet werden können, also z. B. ein Pfad zum Windows-Verzeichnis eines bereitgestellten Images.
/LimitAccess Hiermit wird verhindert, dass DISM zur Reparatur von Onlineimages Windows Update kontaktiert.

Beispiele:

Dism /Image:C:\test\offline /Cleanup-Image /RevertPendingActions
Dism /Image:C:\test\offline /Cleanup-Image /SPSuperseded /HideSP
Dism /Online /Cleanup-Image /ScanHealth
Dism /Online /Cleanup-Image /RestoreHealth /Source:c:\test\mount\windows /LimitAccess

Weitere Informationen finden Sie unter Reparieren eines Windows-Images.

Begrenzungen

  • Wenn Sie ein Paket in einem Offlineimage installieren, lautet der Paketstatus aufgrund ausstehender Onlineaktionen „Installation steht aus“. Anders ausgedrückt: Das Paket wird installiert, wenn das Image gestartet und die Onlineaktionen verarbeitet werden. Wenn nachfolgende Aktionen angefordert werden, können sie erst verarbeitet werden, wenn die vorherige ausstehende Onlineaktion abgeschlossen ist. Sie können die /PreventPending-Option verwenden, wenn Sie ein Paket mit /AddPackage hinzufügen, um die Installation eines Pakets zu überspringen, wenn ausstehende Onlineaktionen vorhanden sind.
  • Für einige Pakete müssen zuerst andere Pakete installiert werden. Sie sollten nicht davon ausgehen, dass Abhängigkeiten erfüllt werden. Wenn für ein Paket Abhängigkeitsanforderungen gelten, verwenden Sie eine Antwortdatei, um die erforderlichen Pakete zu installieren. Durch Übergeben einer Antwortdatei an DISM können mehrere Pakete in der richtigen Reihenfolge installiert werden. Weitere Informationen finden Sie unter Hinzufügen oder Entfernen von Paketen im Offlinemodus mit DISM.
  • Pakete werden in der Reihenfolge installiert, in der Sie in der Befehlszeile aufgelistet sind.
  • Bei Verwendung von DISM zum Auflisten der optionalen Komponenten in einem Windows PE-Image werden die optionalen Komponenten immer als ausstehend aufgeführt, auch wenn der Wartungsvorgang erfolgreich war. Dies ist entwurfsbedingt und erfordert keine zusätzliche Aktion.

Was ist DISM?

Befehlszeilenoptionen für die DSM-Imageverwaltung

Befehlszeilenoptionen für die Abbildverwaltung für die Bereitstellung (DISM)