Команды обслуживания пакетов операционной системы можно использовать для автономного образа для установки, удаления и обновления пакетов Windows®, предоставленных в виде CAB-файлов или файлов автономного установщика обновлений Windows (MSU-файлов). Корпорация Майкрософт использует пакеты для распространения обновлений программного обеспечения, пакетов обновления и языковых пакетов. Пакеты могут также содержать отдельные компоненты Windows. Эти команды обслуживания также можно использовать, чтобы включить или отключить функциональные возможности Windows как в автономном образе, так и в работающей операционной системе Windows. Функциональные возможности являются дополнительными компонентами для базовой операционной системы.

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

DISM.exe {/Image:<путь_к_папке_образа> | /Online} [параметры_dism] {команда_обслуживания} [<аргумент_обслуживания>]

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

DISM.exe /image:<путь_к_каталогу_образа> [/Get-Packages | /Get-PackageInfo | /Add-Package | /Remove-Package ] [/Get-Features | /Get-FeatureInfo | /Enable-Feature | /Disable-Feature ]

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

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

В следующей таблице представлено описание использования каждого параметра обслуживания пакетов операционной системы. Регистр при использовании этих параметров значения не имеет. Но регистр учитывается в именах компонентов.

Параметр Аргумент Описание

/Get-Help

/?

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

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

Примеры:

Dism /image:C:\test\offline /Add-Package /? 
Dism /online /Get-Packages /?

/Get-Packages

/Format:Table

/Format:List

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

Примеры.

Dism /image:C:\test\offline /Get-Packages 
Dism /image:C:\test\offline /Get-Packages /Format:Table
Dism /online /Get-Packages

/Get-PackageInfo

/PackageName:<имя_в_образе>

/PackagePath:<путь_к_файлу_CAB/>

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

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

Примеры.

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

/PackagePath:<путь_к_файлу_CAB/>

/IgnoreCheck

Устанавливает указанный CAB-файл или MSU-файл в образ. С помощью одной команды можно добавить несколько пакетов. Будет проверена возможность применения каждого пакета. Если пакет не применим к указанному образу, будет выведено сообщение об ошибке. Аргумент /IgnoreCheck можно использовать, если нужно, чтобы команда обрабатывалась без проверки применимости каждого пакета.

/PackagePath может указывать на следующие объекты:

  • один CAB-файл или MSU-файл;

  • папка, содержащая один развернутый CAB-файл;

  • папка, содержащая один MSU-файл;

  • папка, содержащая несколько CAB-файлов или MSU-файлов.

Примеры.

Dism /image:C:\test\offline /LogPath:AddPackage.log /Add-Package /PackagePath:C:\packages\package.cab 
Dism /image:C:\test\offline /Add-Package /PackagePath:C:\packages\package1.cab /PackagePath: C:\packages\package2.cab /ignorecheck

/Remove-Package

/PackageName:<имя_в_образе>

/PackagePath:<путь_к_файлу_CAB/>

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

Примечание.

Эта команда позволяет удалить пакет из автономного образа без уменьшения размера образа.

Команда /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:RemovePackage.log /Remove-Package /PackagePath:C:\packages\package1.cab /PackagePath: C:\packages\package2.cab

/Get-Features

/PackageName:<имя_в_образе>

/PackagePath:<путь_к_файлу_CAB/>

/Format:Table

/Format:List

Выводит основные сведения обо всех функциональных возможностях (компонентах операционной системы, содержащих дополнительные возможности базового пакета Windows) в пакете. Для поиска имени пакета в образе можно использовать параметр /Get-Features или можно указать путь к первоначальному источнику пакета. Если для пакета не заданы имя или путь, будут перечислены все компоненты, содержащиеся в образе. /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:<имя_в_образе>

/PackageName:<имя_в_образе>

/PackagePath:<путь_к_файлу_CAB/>

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

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

Примеры.

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

/Enable-Feature

/FeatureName:<имя_в_образе>

/PackageName:<имя_в_образе>

/PackagePath: <путь_к_пакету>

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

Для базового пакета Windows указывать /PackageName не нужно.

Чтобы указать первоначальный источник пакета, используйте /PackagePath. Если пакет еще не установлен, он будет установлен и включен.

Примеры.

Dism /image:C:\test\offline /Enable-Feature /FeatureName:Hearts
Dism /image:C:\test\offline /Enable-Feature /FeatureName:Calc /PackagePath:C:\packages\Calc.cab
Dism /image:C:\test\offline /Enable-Feature /FeatureName:Calc /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Disable-Feature

/FeatureName:<имя_в_образе>

/PackageName:<имя_в_образе>

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

В именах компонентов учитывается регистр.

Примеры.

Dism /image:C:\test\offline /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

/RevertPendingActions

Выполняет над образом операции очистки или восстановления.

В случае сбоя при загрузке можно использовать параметр /RevertPendingActions, чтобы попытаться выполнить восстановление системы. Эта операция отменяет все отложенные действия предыдущих операций обслуживания, так как эти действия могут быть причиной сбоя при загрузке. Параметр /RevertPendingActions не поддерживается для работающей операционной системы, а также для образа Windows PE или среды восстановления Windows (Windows RE).

Важно!

Параметр /RevertPendingActions следует использовать только в сценарии восстановления системы для выполнения операций восстановления образа Windows, при загрузке которого произошел сбой.

Примеры.

DISM /Image:C:\test\offline /Cleanup-Image /RevertPendingActions

Ограничения

  • При установке пакета в автономный образ из-за отложенных интерактивных действий состоянием пакета становится «установка отложена». Другими словами, пакет будет установлен при загрузке образа и выполнении интерактивных действий. Если запрашиваются последующие действия, они не могут быть обработаны до завершения предыдущего отложенного интерактивного действия.

    Если пакет находится в состоянии «установка отложена», то при последующем размещении пакета его состояние меняется на «удаление отложено». Это вызвано тем, что пакет должен быть удален, прежде чем он сможет быть размещен.

  • Для установки некоторых пакетов требуется предварительно установить другие пакеты. Не следует рассчитывать на удовлетворение зависимостей. При наличии требований к зависимостям для установки необходимых пакетов следует использовать файл ответов. С помощью передачи файла ответов в DISM можно установить несколько пакетов в нужном порядке. Это рекомендуемый способ установки нескольких пакетов.

  • Пакеты устанавливаются в том порядке, в котором они перечислены в командной строке.

  • При использовании DISM для перечисления пакетов компонентов в образе Windows PE пакеты всегда будут перечисляться как отложенные, даже если операция обслуживания была успешно выполнена. Это предусмотрено алгоритмом программы и не требует никаких дальнейших действий.

См. также