Параметры обслуживания Command-Line пакета операционной системы DISM (.cab или MSU)

Используйте DISM с кабинетами Windows (.cab) или клиентский компонент Центра обновления Windows файлами изолированного установщика (MSU) для установки или удаления обновлений, языковых пакетов, а также для включения или отключения компонентов Windows. Функции являются необязательными компонентами для основной операционной системы.

Синтаксис

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

Для автономного образа доступны следующие варианты обслуживания пакетов операционной системы:

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]

Для работающей операционной системы доступны следующие варианты обслуживания пакетов операционной системы:

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

/Get-Help /?

При использовании сразу после параметра командной строки для обслуживания пакетов отображаются сведения о параметре и аргументах.

Дополнительные разделы могут стать доступными при указании образа.

Синтаксис

Dism /Get-Help 

Примеры:

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

/Get-Packages

Отображает основные сведения обо всех пакетах на изображении. /Format:Table Используйте аргумент или /Format:List для отображения выходных данных в виде таблицы или списка.

Синтаксис

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

Примеры:

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

/Get-PackageInfo

Отображает подробные сведения о пакете, предоставленном в виде файла .cab. Можно указать только .cab файлы. Эту команду нельзя использовать для получения сведений о пакете для MSU-файлов. /PackagePath:<path_to_package> может указывать на файл .cab или папку.

Можно использовать /Get-Packages параметр , чтобы найти имя пакета на изображении, или указать путь к файлу .cab. Путь к файлу .cab должен указывать на исходный источник пакета, а не на место установки файла в автономном образе.

Синтаксис

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

Примеры:

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

Устанавливает указанный пакет .cab или MSU в образе.

Примечание

С помощью /Add-Package можно добавить MSU-пакет в сетевой или автономный образ Windows 11 версии 21H2 или более поздней версии. Если вы работаете с образом Windows до Windows 11 версии 21H2, вы можете добавлять пакеты MSU только в автономные целевые образы.

В одной командной строке можно добавить несколько пакетов. Проверяется применимость каждого пакета. Если пакет не может быть применен к указанному образу, вы получите сообщение об ошибке. Используйте аргумент /IgnoreCheck, если вы хотите, чтобы команда обрабатывала без проверки применимости каждого пакета.

Синтаксис

Dism /Add-Package /PackagePath:<path_to_cabfile> [/IgnoreCheck] [/PreventPending]
  • /PackagePath может указывать на:

    • Один .cab или MSU-файл.
    • Папка, содержащая один развернутый .cab файл.
    • Папка, содержащая один MSU-файл.
    • Папка, содержащая несколько .cab или MSU-файлов.
  • Если /PackagePath указывает на папку, содержащую .cab или MSU-файлы в корне, все вложенные папки также будут рекурсивно проверяться на наличие .cab и MSU-файлов.

  • Используйте параметр , /PreventPending чтобы пропустить установку пакета, если пакет или образ Windows имеет ожидающие действия в сети.

Примечание

/Add-Packageне запускает полный проверка применимости и зависимостей пакета:

  • Если вы добавляете пакет с зависимостями, убедитесь, что все зависимости установлены при добавлении пакета.
  • Если вы добавляете MSU-файл, обязательно проверка связанное kb для всех инструкций по установке пакета.

Примеры:

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

/Remove-Package

Удаляет указанный пакет файла .cab из образа. Можно указать только .cab файлы. Эту команду нельзя использовать для удаления MSU-файлов.

Примечание

Использование этой команды для удаления пакета из автономного образа не приведет к уменьшению размера образа.

Синтаксис

/Remove-Package {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}
  • Используйте , /PackagePath чтобы указать исходный источник пакета, указать путь к CAB-файлу или указать пакет по имени, как он указан на изображении. /Get-Packages Используйте параметр , чтобы найти имя пакета на изображении.

Примеры:

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

Отображает основные сведения обо всех компонентах (компонентах операционной системы, включающих необязательные компоненты Windows Foundation) в пакете.

Синтаксис

/Get-Features {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>} [/Format:{Table | List}]
  • /Get-Features находит имя пакетов на изображении или в исходном источнике пакета. Если не указать имя или путь к пакету, будут перечислены все компоненты на изображении.
  • /PackageName — это пакет в образе. Вы можете использовать для /DISM Get-Packages просмотра имен пакетов на изображении.
  • /PackagePath может указывать на файл .cab или папку.

/Format:Table Используйте аргумент или /Format:List для отображения выходных данных в виде таблицы или списка.

Примеры:

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

Отображает подробные сведения о функции. Для этого необходимо использовать /FeatureName. Вы можете использовать параметр , /Get-Features чтобы найти имя функции на изображении.

Синтаксис

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

/PackageName и /PackagePath являются необязательными и могут использоваться для поиска определенной функции в пакете.

Примеры:

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

Включает или обновляет указанную функцию в образе. Необходимо использовать /FeatureName параметр . /Get-Features Используйте параметр , чтобы найти имя компонента на изображении.

Синтаксис

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

Параметр можно указать /FeatureName несколько раз в одной командной строке для компонентов, использующих один и тот же родительский пакет.

Вам не нужно указывать имя пакета с помощью параметра , /PackageName если пакет является пакетом Windows Foundation. В противном случае используйте /PackageName , чтобы указать родительский пакет компонента.

Вы можете восстановить и включить функцию, которая ранее была удалена из образа. Используйте аргумент , /Source чтобы указать расположение файлов, необходимых для восстановления компонента. Источник файлов может быть в папке Windows в подключенном образе, например c:\test\mount\Windows. Вы также можете использовать параллельную папку Windows в качестве источника файлов, например z:\sources\SxS.

Если указать несколько /Source аргументов, файлы собираются из первого расположения, где они находятся, а остальные расположения игнорируются. Если вы не укажете /Source для удаленного компонента, используется расположение по умолчанию в реестре или для сетевых образов клиентский компонент Центра обновления Windows (WU).

  • Используйте , /LimitAccess чтобы запретить DISM связываться с WU для изображений из Интернета.
  • Используйте /All , чтобы включить все родительские функции указанного компонента.

Примеры:

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

Отключает указанный компонент на изображении. Необходимо использовать параметр /FeatureName. /Get-Features Используйте параметр , чтобы найти имя компонента на изображении.

Синтаксис:

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

Можно указать /FeatureName несколько раз в одной командной строке для компонентов в одном родительском пакете.

Вам не нужно указывать имя пакета с помощью параметра /PackageName, если пакет является пакетом Windows Foundation. В противном случае используйте /PackageName , чтобы указать родительский пакет компонента.

Используйте для /Remove удаления компонента, не удаляя манифест компонента из образа. Функция будет отображаться как "Удаленная" при использовании для /Get-FeatureInfo отображения сведений о функции. Ее можно восстановить и включить с помощью /Enable-Feature с параметром /Source.

Примеры:

*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

Выполняет операции очистки или восстановления образа. /AnalyzeComponentStoreи /ResetBase можно использовать с Windows 10, Windows 8.1 и образами Windows PE выше 5.0. Начиная с Windows 10 версии 1607, можно указать с /ResetBaseпомощью /Defer , но в качестве параметра следует использовать /Deferтолько в фабрике, где DISM /Resetbase требуется более 30 минут.

Совет

Чтобы определить, когда последний раз выполнялся параметр /ResetBase, проверка запись реестра LastResetBase_UTC в пути к рееструHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing.

Синтаксис

/Cleanup-Image {/RevertPendingActions | /SPSuperseded [/HideSP] | /StartComponentCleanup [/ResetBase [/Defer]] | /AnalyzeComponentStore | /CheckHealth | /ScanHealth | /RestoreHealth [/Source: <filepath>] [/LimitAccess]}
Параметр Описание
/RevertPendingActions При сбое загрузки можно использовать параметр /RevertPendingActions, чтобы попытаться восстановить систему. Операция отменяет все ожидающие действия из предыдущих операций обслуживания, так как эти действия могут быть причиной сбоя загрузки. Параметр /RevertPendingActions не поддерживается в работающей операционной системе, windows PE или образе среды восстановления Windows (Windows RE). Важно! Параметр /RevertPendingActions следует использовать только в сценарии восстановления системы в образе Windows, который не был загружен.
SPSuperseded Удаляет все файлы резервных копий, созданные во время установки пакета обновления. Используйте параметр /HideSP, чтобы предотвратить включение пакета обновления в список установленных Обновления панель управления. Пакет обновления невозможно удалить после завершения операции /SPSupersed.
/StartComponentCleanup Очищает замененные компоненты и уменьшает размер хранилища компонентов. Используйте /ResetBase для сброса базы замененных компонентов, что может еще больше уменьшить размер хранилища компонентов. Установленные обновления Windows нельзя удалить после запуска /StartComponentCleanup с параметром /ResetBase. Используйте параметр /Defer с параметром /ResetBase, чтобы отложить длительные операции очистки до следующего автоматического обслуживания.
/AnalyzeComponentStore Создает отчет о хранилище компонентов. Дополнительные сведения об отчете и об использовании сведений, представленных в отчете, см. в разделе Определение фактического размера папки WinSxS.
/CheckHealth Проверяет, был ли образ помечен как поврежденный в результате сбоя процесса и можно ли исправить повреждение.
/ScanHealth Проверяет изображение на наличие повреждений хранилища компонентов. Эта операция займет несколько минут.
/RestoreHealth Проверяет образ на наличие повреждений хранилища компонентов, а затем выполняет операции восстановления автоматически. Эта операция займет несколько минут.
/Источник Используется с параметром /RestoreHealth, чтобы указать расположение известных версий файлов, которые можно использовать для восстановления, например путь к каталогу Windows подключенного образа.
/LimitAccess Запрещает DISM обращаться к клиентский компонент Центра обновления Windows для восстановления изображений в Интернете.

Примеры:

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

Дополнительные сведения см. в статье Восстановление образа Windows.

Ограничения

  • При установке пакета в автономном образе состояние пакета — "ожидание установки" из-за ожидающих действий в сети. Другими словами, пакет будет установлен при загрузке образа и обработке действий в сети. Если запрашиваются последующие действия, они не могут быть обработаны до завершения предыдущего ожидающего действия в сети. При добавлении /PreventPending пакета с /AddPackage можно использовать параметр , чтобы пропустить установку пакета при наличии ожидающих действий в сети.
  • Для некоторых пакетов сначала необходимо установить другие пакеты. Не следует предполагать, что зависимости будут удовлетворены. Если пакет имеет требования к зависимостям, используйте файл ответов для установки необходимых пакетов. Передав файл ответов в DISM, можно установить несколько пакетов в правильном порядке. Дополнительные сведения см. в статье Добавление и удаление пакетов в автономном режиме с помощью DISM.
  • Пакеты устанавливаются в том порядке, в котором они перечислены в командной строке.
  • При использовании DISM для перечисления необязательных компонентов в образе Windows PE необязательные компоненты всегда будут отображаться как ожидающие, даже если операция обслуживания была успешно выполнена. Это по умолчанию и не требует дополнительных действий.

Что такое DISM?

Параметры управления образами DISM Command-Line

Варианты обслуживания образов развертывания и управления ими (DISM) Command-Line