Overzicht
Dit artikel zet DISM (Deployment Image Servicing and Management) naast de PowerShell-cmdlets (wrappers rond de DISM-API) en ordent veelgebruikte beheertaken met voorbeelden, opties en gedrag.
Notatie van variabelen
| Variabele |
Voorbeeld |
Opmerking |
<<IMAGE_PATH>> |
C:\mount of E:\Windows |
Pad voor /Image: naar een offline Windows (gemounte map of Windows-map op andere schijf) |
<<FEATURE_NAME>> |
NetFx3 |
Naam van Windows-feature |
<<CAPABILITY_NAME>> |
OpenSSH.Client~~~~0.0.1.0 |
OS-uitbreiding (FoD: Features on Demand) |
<<WIM_PATH>> |
D:\sources\install.wim |
WIM/ESD-image |
<<INDEX>> |
1 |
Image-index |
<<MOUNT_DIR>> |
C:\mount |
Mountdoel |
<<DRIVER_DIR>> |
D:\drivers |
Map met INF-drivers |
<<PACKAGE_PATH>> |
C:\Updates\kb5005565.cab |
Updatepakket |
<<LANG_PACK>> |
C:\LP\ja-jp\lp.cab |
Taalpakket-CAB |
<<SOURCE_PATH>> |
D:\sources\sxs |
Bronpad (bijv. voor NetFx3) |
<<APPLY_DIR>> |
C:\ |
Doelmap voor toepassen |
<<SCRATCH_DIR>> |
C:\Temp\Scratch |
Werkmap |
<<LOG_PATH>> |
C:\Temp\dism.log |
Logbestand |
Vrijwel alle commando’s ondersteunen /ScratchDir:<<SCRATCH_DIR>> en /LogPath:<<LOG_PATH>>.
Step 1: Doel selecteren (/Online vs. /Image)
| Optie |
Betekenis |
Voorbeeld |
/Online |
Het actieve Windows |
dism /Online /Cleanup-Image /CheckHealth |
/Image:<<IMAGE_PATH>> |
Offline-Windows of gemounte image |
dism /Image:C:\mount /Add-Driver /Driver:D:\drivers /Recurse |
Step 2: Features opvragen (/Get-Features, /Get-FeatureInfo)
Kern
Lijst en status (Enabled / Disabled / DisabledWithPayloadRemoved) van installeerbare features.
Belangrijkste opties
| Optie |
Betekenis |
Voorbeeld |
/Online |
Tegen draaiend OS |
dism /Online /Get-Features |
/Image:<<IMAGE_PATH>> |
Tegen offline image |
dism /Image:C:\mount /Get-Features |
/Get-Features |
Lijst tonen |
dism /Online /Get-Features /Format:Table |
/Get-FeatureInfo |
Details van een feature |
dism /Online /Get-FeatureInfo /FeatureName:NetFx3 |
/FeatureName:<<FEATURE_NAME>> |
Doelfeature |
NetFx3 |
/Format:Table |
Tabelweergave |
dism /Online /Get-Features /Format:Table |
Voorbeelden
dism /Online /Get-Features /Format:Table
dism /Online /Get-FeatureInfo /FeatureName:NetFx3
Bij DisabledWithPayloadRemoved is een /Source vereist.
Step 3: Features in-/uitschakelen (/Enable-Feature, /Disable-Feature)
Kern
Windows-features zoals .NET Framework 3.5 of SMB 1.0 beheren.
Belangrijkste opties
| Optie |
Betekenis |
Voorbeeld |
/Online |
Actief OS |
dism /Online /Enable-Feature /FeatureName:NetFx3 |
/FeatureName:<<FEATURE_NAME>> |
Doelfeature |
NetFx3 |
/All |
Afhankelijkheden meepakken |
|
/Source:<<SOURCE_PATH>> |
Bron voor verwijderde payload |
dism /Online /Enable-Feature /FeatureName:NetFx3 /Source:D:\sources\sxs |
/LimitAccess |
Geen Windows Update/WSUS |
|
/Enable-Feature |
Inschakelen |
dism /Online /Enable-Feature /FeatureName:SMB1Protocol |
/Disable-Feature |
Uitschakelen |
dism /Online /Disable-Feature /FeatureName:SMB1Protocol |
/LogPath:<<LOG_PATH>> |
Logpad |
|
Voorbeelden
dism /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:<<SOURCE_PATH>> /LogPath:<<LOG_PATH>>
dism /Online /Disable-Feature /FeatureName:SMB1Protocol /LogPath:<<LOG_PATH>>
Step 4: Capabilities opvragen (/Get-Capabilities, /Get-CapabilityInfo)
Kern
FoD-componenten (o.a. RSAT, OpenSSH.Client, Language.Basic) en hun status.
Belangrijkste opties
| Optie |
Betekenis |
Voorbeeld |
/Online |
Tegen actief OS |
dism /Online /Get-Capabilities |
/Image:<<IMAGE_PATH>> |
Tegen offline image |
dism /Image:C:\mount /Get-Capabilities |
/Get-Capabilities |
Lijst met uitbreidingen |
dism /Online /Get-Capabilities /Format:Table |
/Get-CapabilityInfo |
Detail van één capability |
dism /Online /Get-CapabilityInfo /CapabilityName:OpenSSH.Client~~~~0.0.1.0 |
/Format:Table |
Tabelweergave |
dism /Online /Get-Capabilities /Format:Table |
Voorbeelden
dism /Online /Get-Capabilities /Format:Table
dism /Online /Get-CapabilityInfo /CapabilityName:<<CAPABILITY_NAME>>
Capabilities kunnen via Windows Update, WSUS of ISO/share worden toegevoegd.
Step 5: Capabilities toevoegen/verwijderen (/Add-Capability, /Remove-Capability)
Kern
FoD-componenten zoals OpenSSH of RSAT installeren of verwijderen.
Belangrijkste opties
| Optie |
Betekenis |
Voorbeeld |
/Online |
Actief OS |
dism /Online /Add-Capability |
/CapabilityName:<<CAPABILITY_NAME>> |
Doelcapability |
OpenSSH.Client~~~~0.0.1.0 |
/Source:<<SOURCE_PATH>> |
FoD-ISO of share |
dism /Online /Add-Capability /CapabilityName:OpenSSH.Client~~~~0.0.1.0 /Source:D:\ /LimitAccess |
/LimitAccess |
Alleen opgegeven bron |
|
/LogPath:<<LOG_PATH>> |
Logpad |
|
Voorbeelden
dism /Online /Add-Capability /CapabilityName:<<CAPABILITY_NAME>> /LogPath:<<LOG_PATH>>
dism /Online /Remove-Capability /CapabilityName:<<CAPABILITY_NAME>> /LogPath:<<LOG_PATH>>
Step 6: Component store controleren/repareren (/Cleanup-Image)
Kern
WinSxS-integriteit controleren, repareren en ruimte optimaliseren.
Belangrijkste opties
| Optie |
Betekenis |
Voorbeeld |
/Online |
Actief OS |
dism /Online /Cleanup-Image /CheckHealth |
/CheckHealth |
Snelle integriteitscheck |
|
/ScanHealth |
Diepe scan |
|
/RestoreHealth |
Reparatie uitvoeren |
dism /Online /Cleanup-Image /RestoreHealth |
/Source:<<SOURCE_PATH>> |
Bronpad voor herstel |
|
/LimitAccess |
Zonder Windows Update |
|
/StartComponentCleanup |
Oude updates opschonen |
|
/ResetBase |
Basis vastzetten (geen rollback) |
|
/AnalyzeComponentStore |
Grootteanalyse |
|
Voorbeelden
dism /Online /Cleanup-Image /CheckHealth
dism /Online /Cleanup-Image /ScanHealth
dism /Online /Cleanup-Image /RestoreHealth /Source:<<SOURCE_PATH>> /LimitAccess /LogPath:<<LOG_PATH>>
dism /Online /Cleanup-Image /StartComponentCleanup /ResetBase /LogPath:<<LOG_PATH>>
Step 7: Image-informatie tonen (/Get-ImageInfo)
Belangrijkste opties
| Optie |
Betekenis |
Voorbeeld |
/Get-ImageInfo |
Info over WIM/ESD |
dism /Get-ImageInfo /ImageFile:install.wim |
/ImageFile:<<WIM_PATH>> |
Doelbestand |
|
/Index:<<INDEX>> |
Doelindex |
|
/LogPath:<<LOG_PATH>> |
Logpad |
|
Voorbeeld
dism /Get-ImageInfo /ImageFile:<<WIM_PATH>> /LogPath:<<LOG_PATH>>
Step 8: Offline image mounten en loskoppelen
Belangrijkste opties
| Optie |
Betekenis |
Voorbeeld |
/Mount-Wim |
WIM mounten |
|
/WimFile:<<WIM_PATH>> |
Bron-WIM |
|
/Index:<<INDEX>> |
Doelindex |
|
/MountDir:<<MOUNT_DIR>> |
Mountpad |
|
/ReadOnly |
Alleen-lezen mount |
|
/Get-MountedWimInfo |
Huidige mountstatus |
|
/Unmount-Wim |
Ontkoppelen |
|
/Commit |
Wijzigingen opslaan |
|
/Discard |
Wijzigingen verwerpen |
|
Voorbeelden
dism /Mount-Wim /WimFile:<<WIM_PATH>> /Index:<<INDEX>> /MountDir:<<MOUNT_DIR>>
dism /Get-MountedWimInfo
dism /Unmount-Wim /MountDir:<<MOUNT_DIR>> /Commit
Step 9: Drivers, pakketten en taalpakketten integreren
Belangrijkste opties
| Optie |
Betekenis |
Voorbeeld |
/Online |
Tegen actief OS |
|
/Image:<<MOUNT_DIR>> |
Tegen offline image |
|
/Add-Driver |
Driver toevoegen |
|
/Driver:<<DRIVER_DIR>> |
Map met INF’s |
|
/Recurse |
Inclusief submappen |
|
/Add-Package |
Update-/taalpakket integreren |
|
/PackagePath:<<PACKAGE_PATH>> |
Pad naar pakket |
|
/Set-AllIntl:ja-JP |
Locale instellen |
|
Opmerkingen:
/Add-Driver is alleen offline.
/Add-Package en /Set-AllIntl werken online en offline.
Voorbeelden
dism /Image:<<MOUNT_DIR>> /Add-Driver /Driver:<<DRIVER_DIR>> /Recurse
dism /Image:<<MOUNT_DIR>> /Add-Package /PackagePath:<<PACKAGE_PATH>>
dism /Image:<<MOUNT_DIR>> /Add-Package /PackagePath:<<LANG_PACK>>
dism /Image:<<MOUNT_DIR>> /Set-AllIntl:ja-JP
Step 10: Image capturen, exporteren, toepassen
Belangrijkste opties
| Optie |
Betekenis |
Voorbeeld |
/Capture-Image |
Map als WIM vastleggen |
|
/ImageFile:<<WIM_PATH>> |
Doel-WIM |
|
/CaptureDir:<<APPLY_DIR>> |
Brondirectory |
|
/Name:"<Naam>" |
Imagenaam |
|
/Export-Image |
WIM (her)exporteren/compacten |
|
/Apply-Image |
WIM toepassen |
|
/Compress:max |
Maximale compressie |
|
/ApplyDir:<<APPLY_DIR>> |
Doelmap |
|
Voorbeelden
dism /Capture-Image /ImageFile:D:\Custom.wim /CaptureDir:<<APPLY_DIR>> /Name:"Custom Image"
dism /Export-Image /SourceImageFile:<<WIM_PATH>> /SourceIndex:<<INDEX>> /DestinationImageFile:D:\install_compressed.wim /Compress:max
dism /Apply-Image /ImageFile:<<WIM_PATH>> /Index:<<INDEX>> /ApplyDir:<<APPLY_DIR>>
Step 11: PowerShell-equivalenten
Mapping
| Domein |
DISM |
PowerShell |
Doel |
| Features opvragen |
/Get-Features, /Get-FeatureInfo |
Get-WindowsOptionalFeature |
Lijst/details |
| Features aan/uit |
/Enable-Feature, /Disable-Feature |
Enable-WindowsOptionalFeature, Disable-WindowsOptionalFeature |
In-/uitschakelen |
| Capabilities opvragen |
/Get-Capabilities, /Get-CapabilityInfo |
Get-WindowsCapability |
Lijst/details |
| Capabilities add/remove |
/Add-Capability, /Remove-Capability |
Add-WindowsCapability, Remove-WindowsCapability |
FoD beheren |
| Pakketten opvragen/toevoegen |
/Get-Packages, /Add-Package |
Get-WindowsPackage, Add-WindowsPackage |
Updates/LP integreren |
| Drivers lijst/integr/verwijder |
/Get-Drivers, /Add-Driver, /Remove-Driver |
Get-WindowsDriver, Add-WindowsDriver, Remove-WindowsDriver |
Vooral offline |
| Imageinfo/mount |
/Get-ImageInfo, /Mount-Wim, /Unmount-Wim |
Get-WindowsImage, Mount-WindowsImage, Dismount-WindowsImage |
WIM-beheer |
11.1 Features
Get-WindowsOptionalFeature
| Optie |
Betekenis |
Voorbeeld |
-Online |
Tegen actief OS |
Get-WindowsOptionalFeature -Online -FeatureName <<FEATURE_NAME>> |
-Path <<IMAGE_PATH>> |
Tegen offline image |
Get-WindowsOptionalFeature -Path <<IMAGE_PATH>> |
-FeatureName <<FEATURE_NAME>> |
Enkel feature |
-FeatureName NetFx3 |
Get-WindowsOptionalFeature -Online
Get-WindowsOptionalFeature -Path <<IMAGE_PATH>> -FeatureName <<FEATURE_NAME>>
Enable-/Disable-WindowsOptionalFeature
| Optie |
Betekenis |
Voorbeeld |
-Online / -Path <<IMAGE_PATH>> |
Doel kiezen |
Enable-WindowsOptionalFeature -Online |
-FeatureName <<FEATURE_NAME>> |
Feature |
-FeatureName NetFx3 |
-All |
Afhankelijkheden |
-All |
-Source <<SOURCE_PATH>> |
Bron payload |
-Source <<SOURCE_PATH>> |
Enable-WindowsOptionalFeature -Online -FeatureName NetFx3 -All -Source <<SOURCE_PATH>>
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
11.2 Capabilities
Get-WindowsCapability
| Optie |
Betekenis |
Voorbeeld |
-Online |
Actief OS |
Get-WindowsCapability -Online |
-Name <<CAPABILITY_NAME>> |
Wildcards toegestaan |
Get-WindowsCapability -Online -Name OpenSSH.* |
-Path <<IMAGE_PATH>> |
Offline image |
Get-WindowsCapability -Path <<IMAGE_PATH>> |
Get-WindowsCapability -Online
Get-WindowsCapability -Online -Name <<CAPABILITY_NAME>>
Add-/Remove-WindowsCapability
| Optie |
Betekenis |
Voorbeeld |
-Online / -Path <<IMAGE_PATH>> |
Doel |
Add-WindowsCapability -Online |
-Name <<CAPABILITY_NAME>> |
Capability |
-Name OpenSSH.Client~~~~0.0.1.0 |
-Source <<SOURCE_PATH>> |
FoD-bron |
-Source <<SOURCE_PATH>> |
Add-WindowsCapability -Online -Name <<CAPABILITY_NAME>>
Remove-WindowsCapability -Online -Name <<CAPABILITY_NAME>>
11.3 Pakketten (updates/taalpakketten)
Get-WindowsPackage
| Optie |
Betekenis |
Voorbeeld |
-Online / -Path <<IMAGE_PATH>> |
Doel |
Get-WindowsPackage -Online |
-PackagePath <<PACKAGE_PATH>> |
Pakketdetails |
Get-WindowsPackage -Online -PackagePath <<PACKAGE_PATH>> |
Get-WindowsPackage -Online
Add-WindowsPackage
| Optie |
Betekenis |
Voorbeeld |
-Online / -Path <<IMAGE_PATH>> |
Doel |
Add-WindowsPackage -Online -PackagePath <<PACKAGE_PATH>> |
-PackagePath <<PACKAGE_PATH>> |
.cab aanbevolen (ook .msu) |
|
Add-WindowsPackage -Online -PackagePath <<PACKAGE_PATH>>
Add-WindowsPackage -Path <<IMAGE_PATH>> -PackagePath <<LANG_PACK>>
11.4 Drivers
Get-WindowsDriver
| Optie |
Betekenis |
Voorbeeld |
-Online / -Path <<IMAGE_PATH>> |
Doel |
Get-WindowsDriver -Path <<IMAGE_PATH>> |
-All |
Alle drivers tonen |
-All |
Get-WindowsDriver -Path <<IMAGE_PATH>> -All
Add-/Remove-WindowsDriver
| Optie |
Betekenis |
Voorbeeld |
-Path <<IMAGE_PATH>> |
Doelimage |
Add-WindowsDriver -Path <<IMAGE_PATH>> -Driver <<DRIVER_DIR>> -Recurse |
-Driver <<DRIVER_DIR>> |
INF-map |
|
-Recurse |
Inclusief submappen |
|
-Driver <<oem*.inf>> (Remove) |
Doel-INF |
Remove-WindowsDriver -Path <<IMAGE_PATH>> -Driver oem1.inf |
Add-WindowsDriver -Path <<IMAGE_PATH>> -Driver <<DRIVER_DIR>> -Recurse
Remove-WindowsDriver -Path <<IMAGE_PATH>> -Driver oem1.inf
Belangrijk: Add-/Remove-WindowsDriver hebben geen -Online-schakelaar; driverbeheer met deze cmdlets is in de praktijk offline.
11.5 Image-informatie & mount
Get-WindowsImage
| Optie |
Betekenis |
Voorbeeld |
-ImagePath <<WIM_PATH>> |
WIM/ESD |
Get-WindowsImage -ImagePath <<WIM_PATH>> |
-Index <<INDEX>> |
Enkel image |
-Index <<INDEX>> |
Get-WindowsImage -ImagePath <<WIM_PATH>>
Mount-/Dismount-WindowsImage
| Optie |
Betekenis |
-ImagePath <<WIM_PATH>> |
Invoer-WIM |
-Index <<INDEX>> |
Doelindex |
-Path <<MOUNT_DIR>> |
Mountpad |
-ReadOnly |
Alleen-lezen |
-ScratchDirectory <<SCRATCH_DIR>> |
Werkmap |
-Save (Dismount) |
Wijzigingen opslaan |
-Discard (Dismount) |
Wijzigingen verwerpen |
Mount-WindowsImage -ImagePath <<WIM_PATH>> -Index <<INDEX>> -Path <<MOUNT_DIR>>
Dismount-WindowsImage -Path <<MOUNT_DIR>> -Save
Samenvatting
- DISM: laag-niveaubeheer voor OS-componenten, WIM, updates en drivers.
- PowerShell (DISM-API): dezelfde functies, script- en automatiseringsvriendelijk.
- Capabilities (FoD): on-demand features zoals OpenSSH, RSAT en taalpakketten.