Интеграция драйверов windows dism

DISM: интегрируем драйвера в образ Windows

В этой статье я расскажу про то, как при помощи набора утилит DISM можно добавить драйвера различных устройств в загрузочный образ WindowsPE. В частности, я собираюсь добавить драйвера на сетевую карту Intel (Intel LAN drivers) в уже имеющийся у нас образ Windows7. Итак, сначала у нас есть каталог C:winpe_x86 с загрузочным образом (BOOT.WIM) и скачанные с официального сайта Intel драйвера LAN (папка LAN).

1. Переходим в Start > All Programs > Microsoft Windows AIK > Deployment Tools Command Prompt > щелкаем по значку правой кнопкой мыши и выбираем «Run as administrator»

2. С использованием утилиты DISM монтируем базовый образ в локальную папку Windows PE, для чего нужно набрать следующую команду:

3. Далее в образ Windows нам необходимо добавить файлы с описанием устройств (.inf ). Для чего опять воспользуемся командой
dism с опцией /AddDriver.

В моем случае такая команда выглядит следующим образом:

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

4. После интеграции всех необходимых драйверов, необходимо отмонтировать образ Windows PE при помощи следующей команды DISM:


Далее полученный загрузочный образ Windows PE нужно записать на загрузочное устройство (CD/DVD-ROM или USB) и протестировать его работу.

Интеграция драйверов в установочный образ Windows 10 / Server 2012 R2

В этой статье мы покажем, как добавить необходимые драйвера устройств непосредственно в установочный образ Windows. Интеграция необходимых драйверов в ваш офлайн образ Windows используется при необходимости разворачивания большого количества рабочих станций и серверов на однотипном железе. Вместо того, чтобы вручную устанавливать специфические драйвера (в том числе AHCI/RAID/NVMe) на каждом компьютере, вы можете существенно упростить и ускорить процедуру развертывания ОС, интегрировав драйвера непосредственно в хранилище драйверов (Driver Store) установочного образа Windows в ISO / WIM файле или в VHD/VHDX файл с ОС. При установке такого образа служба Plug and Play (PnP) автоматически установит необходимые драйверы для обнаруженного оборудования.

Данная инструкция по интеграции драйверов в образ Windows можно использовать как десктопных редакциях Windows 10, Windows 8.1, так и в серверных платформах Windows 2016, 2012 R2.

В современных редакциях Windows вы можете добавить драйвера в установочный ISO образ двумя способами:

  • с помощью утилиты DISM;
  • с помощью PowerShell.

По сути обе методики выполняют одну и туже операцию: интегрируют дополнительные драйвера в офлайн образ Windows. Какой способов воспользоваться – вопрос личных предпочтений администратора. Разберем подробнее оба способа на примере интеграции драйверов в установочный образ Windows 10.

Как интегрировать драйвера в образ Windows 10 с помощью PowerShell

В первую очередь вам необходимо скачать и поместить все необхдимые драйвера устройств в один каталог (для каждого драйвера нужно создать отдельную папку). Обратите внимание, что многие производители (в том числе Dell, HP) поставляют свои драйвера в виде самораспаковывающихся exe файлов или zip архивов. Такие архивы необходимо распаковать на диск, чтобы в каталоге с драйверами присутствовали inf, cat и sys файлы.

Перед началом работы создадим следующую структуру каталогов:

    Каталог Drivers – в нем хранятся распакованные файлы драйверов для вашей редакции Windows 10 (которые предполагается интегрировать в дистрибутив);

Выведите список всех версий Windows, которые содержатся в файле Install.wim с помощью командлета PowerShell Get-WindowsImage. Это необходимо для того, чтобы указать ту редакцию Widows, в которую планируется интегрировать дополнительные драйвера.

Читайте также:  Что делать если при установке windows не загружается

Get-WindowsImage -ImagePath C:\WinWork\ISO\install.wim

В нашем примере в WIM файле содержится всего 1 редакция Windows 10 Pro с индексом 1 (ImageIndex : 1).

Далее необходимо смонтировать образ выбранной версии Windows в каталог Mount. Полученные выше индекс редакции Windows, которую необходимо смонтировать нужно указать в качестве аргумента Index:

Mount-WindowsImage -Path C:\WinWork\Mount\ -ImagePath C:\WinWork\ISO\install.wim -Index 1

После того, как образ смонтирован, запустите процесс добавления в него драйверов, которые хранятся в каталоге Drivers (параметр -Recurse предполагает рекурсивный обход вложенных папок и добавление драйверов по всем найденным inf файлам).

Add-WindowsDriver -Path C:\WinWork\Mount\ -Driver C:\WinWork\Drivers -Recurse

Командлет Add-WindowsDriver осуществит рекурсивный поиск в указанном каталоге всех .inf файлов с описаниями драйверов. По описанию в inf файле команда добавит зависимые INF, DLL, CAT, PNF и т.д. файлы в ваш образ Windows.

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

Dismount-WindowsImage -Path C:\WinWork\Mount\ –Save

В рассмотренном примере мы добавили драйверы в образ Install.wim, это образ Windows, который будет установлен на ваш диск. Если необходимо добавить драйвера в загрузочный образ Windows (с которого выполняется только установка Windows), необходимо добавить драйвера в файл Boot.wim. Обычно это необходимо, когда при установке Windows на компьютере не определяются локальные диски или отсутствует доступ к сети. Обычно в образ boot.wim необходимо интегрировать только драйвера контроллеров, дисков или сетевых адаптеров.

Вы можете сконвертировать ваш файл install.wim, содержащий установочный образ Windows с интегрированными драйверами в формат install.esd, применив сжатие (compress):

DISM /Export-Image /SourceImageFile:C:\WinWork\ISO\install.wim /SourceIndex:1 /DestinationImageFile:C:\WinWork\ISO\install.esd /Compress:recovery

Осталось создать iso файл и записать его на диск или флешку с помощью Dism++ или команды oscdimg:

oscdimg -n -m -bc:\ISO\boot\etfsboot.com C:\ISO C:\new_win10pro_image.iso

Интеграция драйверов в образ Windows Server с помощью DISM

Теперь покажем пример интеграции драйверов в установочный образ Windows Server 2012 R2. В том случае, если сборка образа ведется на Windows 8.1 для дальнейшей работы с последней версией DISM вам понадобится скачать и установить Windows 8 ADK (http://www.microsoft.com/en-us/download/details.aspx?id=30652). Нужно установить компонент Deployment Tools.

Структура каталогов, с которой мы будем работать может быть той же самой: Drivers (хранятся драйвера и *.inf файлы), ISO (распакованный образ Windows Server 2012 R2), Mount (каталог монтирования образов). Предполагается, что в файле install.wim нас интересует версия Windows Server 2012 R2 Datacenter с индексом 3.

Смонтируйте установочный образ install.wim:

dism /Mount-Wim /WimFile:c:\iso\sources\install.wim /Index:3 /MountDir:c:\mount

Запустите рекурсивный поиск и интеграцию в хранилище компонентов образа Windows Server 2012 R2 новых драйверов:

dism /image:c:\mount /Add-Driver «/driver:c:\drivers\» /recurse

Сохраните изменения в образе:

dism /unmount-wim /mountdir:d:\mount /commit

Если необходимо добавить драйвера во все образы Windows Server, содержащиеся в wim-файле, указанные операции нужно провести для всех индексов версий ОС, которые вернула команда:

dism /get-wiminfo /wimfile:d:\install.wim

Кроме интеграции драйверов, обычно необходимо добавить в устанавливаемый образ Windows еще обновления безопасности (Как интегрировать обновления в установочный образ Windows), это повысит уровень защищённости ОС сразу после установки. Осталось записать получившийся установочный образ на загрузочный диск или USB флешку или сконвертировать его в ISO.

Добавление драйверов в дистрибутив Windows.

Начиная с Vindows Vista, дистрибутивы Windows создаются на базе образов формата WIM (Windows IMaging Format), главной особенностью которых является технология единственной копии множества файлов ( single instance storage ) позволяющей получить компактный дистрибутив, с высокой скоростью развертывания.

Файлы образов формата WIM

В отличие от сектор-ориентированных форматов (таких, как .iso, .tib, .bin ), образ формата WIM является файл-ориентированным, то есть его наименьшим логическим элементом является файл . При чем, файл, входящий в состав дистрибутива хранится в сжатом виде и в единственном экземпляре. Его же копии в дереве файловой системы заменяются ссылками, что обеспечивает компактность образов и высокую скорость их развертывания. Файл формата WIM может содержать несколько образов, отличающихся числовым индексом .

Читайте также:  How to create file in windows powershell

Структура файла WIM, содержащего 2 образа:

Как видно, wim-файл содержит 6 типов содержимого :

WIM Header — заголовок wim-файла, описывающий индексы образов, их содержимое, атрибуты, версию, размер, тип сжатия и т.п.

File Resources — последовательность пакетов, содержащих упакованные данные файлов в составе образа.

Metadata Resource — содержит информацию о файлах в составе образа, включая структуру папок и атрибуты.

Lookup Table — таблица расположений и размеров ресурсных файлов в файле .wim

XML Data — данные в формате XML с дополнительными сведениями об образе. Представляют собой несжатый текст в кодировке Unicode.

Integrity Table — таблица целостности, используемая для контроля работоспособного состояния образа

Попросту говоря, WIM-файл – это хранилище WIM-образов, и каждый из них является образом обычного логического диска. При чем, как и логические диски, WIM-образы могут быть загрузочными. В частности, установка всех современных операционных систем семейства Windows выполняется с использованием двух файлов WIM-образов boot.wim и install.wim . Первый обеспечивает начальную загрузку среды предустановки Windows PE (Windows Preinstall Environment), из которой выполняется процесс установки самой системы с использованием содержимого файла образа с именем install.wim . Кроме того, после завершения стандартной установки Windows, создается среда восстановления Windows RE (Recovery Environment), предназначенная для загрузки из образа WinRE.WIM и восстановления работоспособности при проблемах с загрузкой основной системы.

Обычно образ winre.wim располагается в скрытом разделе, которому не присваивается буква логического диска. В диспетчере дисков отображается как ”Зарезервировано системой”

Образ WIM может быть смонтирован в системе, т.е. распакован и представлен в виде исходного дерева папок и файлов, на основе которого он был создан. В смонтированный образ можно внести изменения, а затем пересоздать образ заново. Именно так и происходит добавление новых драйверов в существующий дистрибутив Windows.

Добавление драйверов в дистрибутив Windows с помощью стандартной утилиты dism.exe

Начиная с Windows 7, утилита dism.exe ( Deployment Image Servicing and Management ) входит в стандартный комплект программного обеспечения установленной ОС Windows. Представляет собой средство командной строки, которое может использоваться для обслуживания образов Windows, и заменяет утилиты Pkgmgr.exe, PEimg.exe и Intlcfg.exe, которые впервые появились в Windows Vista. Функциональные возможности этих средств теперь собраны в одном инструменте dism.exe. Кроме того, в dism.exe были добавлены новые функции, улучшающие возможности автономного обслуживания образов.

Процесс добавления драйверов состоит из нескольких шагов:

— монтирование WIM-образа в какой-либо каталог. Содержимое образа распаковывается и помещается в указанный каталог.

— установка требуемых драйверов в смонтированный образ с помощью утилиты dism.exe .

— применение изменений в образе и демонтирование его командой dism

Для добавления драйверов в дистрибутив Windows потребуется сам дистрибутив и собственно файлы драйверов. Дистрибутив должен обеспечивать запись измененных образов, а файлы для установки драйверов не должны быть в упакованном виде (в формате .cab, .msi, .exe и т.п.). В качестве примера возьмем загрузочную флэшку с Windows 7 и старше, а в качестве драйверов – набор драйверов для материнской платы.

Файлы образов boot.wim и install.wim размешаются в папке sources установочной флэшки, например, имеющей букву F: в текущей системе.

Для добавления драйверов можно использовать каталог на жестком диске, например, D:\Drivers . Если файлы драйвера упакованы, то нужно их распаковать в подкаталоги каталога D:\Drivers например, с помощью архиватора 7-zip .

Естественно, необходимо учитывать разрядность системы. Если имеется 32-разрядные и 64-разрядные версии драйверов, а версия ОС 64-разрядная, то 32-разрядные версии нужно удалить.

Как уже упоминалось, в файле .wim может содержаться несколько образов и для работы с конкретным образом нужно знать его индекс. Делается это командой:

DISM /Get-WimInfo /WimFile:F:\sources\install.wim — отобразить информацию об образах файла install.wim

Пример отображаемой информации для установочной флэшки с Windows 7:

Cистема DISM
Версия: 6.1.7600.16385
Сведения об образе : F:\sources\install.wim

Индекс: 1
Имя : Windows 7 HOMEBASIC
Описание : Windows 7 HOMEBASIC
Размер (байт): 11 531 865 453

Индекс: 2
Имя : Windows 7 HOMEPREMIUM
Описание : Windows 7 HOMEPREMIUM
Размер (байт): 12 045 241 621

Индекс: 3
Имя : Windows 7 PROFESSIONAL Описание : Windows 7 PROFESSIONAL
Размер (байт): 11 947 613 470

Индекс: 4
Имя : Windows 7 ULTIMATE
Описание : Windows 7 ULTIMATE
Размер (байт): 12 110 440 566

Если мы хотим добавить драйверы в образ Windows 7 PROFESSIONAL, то необходимо использовать индекс 3 . Монтируем нужный образ, например, в каталог D:\newwim (каталог обязательно должен быть пустым):

Dism /Mount-Wim /index:3 /WimFile:F:\sources\install.wim /MountDir:D:\newwim

После выполнения команды, в каталоге D:\newwim будет содержимое образа, используемого для установки Windows 7 PROFESSIONAL:

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

DISM.exe /Image:D:\newwim /Add-Driver /Driver:D:\Drivers\Usb\Usb3.inf — добавить в образ драйвер на основе информации из файла D:\Drivers\Usb\Usb3.inf

DISM.exe /Image:C:\newwim /Add-Driver /DriverName:»C:\Drivers\1.inf» /DriverName:»C:\Drivers\2.inf» /DriverName:»C:\Drivers\3.inf» — добавить несколько драйверов одной командой. При добавлении нескольких драйверов, их установка выполняется в том же порядке, в каком они перечисляются в командной строке DISM

DISM.exe /Image:D:\newwim /Add-Driver /Driver:D:\Drivers /recurse — добавить в образ все драйверы из каталога D:\Drivers и его подкаталогов. Обычно такой вариант удобнее, когда в каталог помещено несколько папок с драйверами.

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

Кроме того, подробная информация записывается в журнал C:\Windows\Logs\DISM\dism.log

При возникновении ошибки установки отображается ее причина:

Ошибка 48 — системе не удается проверить цифровую подпись этого файла — rcraid.sys

Для добавления драйвера, не имеющего цифровой подписи (редко, но бывает) можно воспользоваться ключом /ForceUnsigned

DISM.exe /Image:D:\newwim /Add-Driver /Driver:D:\Drivers /recurse /ForceUnsigned

После успешного завершения процедуры добавления драйверов, необходимо отмонтировать образ с применением сделанных в нем изменений:

Dism /Unmount-Wim /MountDir:D:\newwim /Commit

Если по каким-либо причинам требуется отменить изменения, внесенные в образ, вместо ключа /Commit используется ключ /discard :

Dism /Unmount-Wim /MountDir:D:\newwim /discard — отмонтировать образ без внесения изменений.

При необходимости данная последовательность действий выполняется для других версий ОС с учетом их индекса, полученного командой DISM с ключом /Get-WimInfo ( 1 – Windows 7 Home Basic, 2 – Home Premium и т.д.).

При установке Windows 7 на современном оборудовании, может возникнуть такая ситуация, когда не работает ни мышь, ни клавиатура, поскольку система не имеет поддержки USB 3.0, а порты USB 2.0 отсутствуют или же не поддерживаются средой предустановки. В этом случае можно обойтись подменой файла boot.wim из дистрибутивов Windows 8.1 / Windows 10, как я уже описывал в статье Как избавиться от ошибки «Не найден необходимый драйвер для дисковода оптических дисков” при установке Windows 7, или интегрировать нужные драйверы в образы файла с помощью DISM. Выполняется данная процедура таким же образом, как и для образов в составе install.wim :

DISM /Get-WimInfo /WimFile:F:\sources\boot.wim — получить сведения об образах.

Dism /Mount-Wim /index:2 /WimFile:F:\sources\boot.wim /MountDir:D:\newwim — смонтировать образ с индексом 2.

Dism /image:D:\newwim /Add-Driver /driver:»D:\Drivers» /recurse /ForceUnsigned — добавить нужные драйверы.

Dism /Unmount-Wim /MountDir:D:\newwim /Commit — отключить образ с применением изменений.

Нужно учесть, что в файле boot.wim присутствуют 2 образа:

Сведения об образе : F:\Sources\boot.wim

Индекс: 1
Имя : Microsoft Windows PE (x64)
Описание : Microsoft Windows PE (x64)
Размер (байт): 1 447 345 496

Индекс: 2
Имя : Microsoft Windows Setup (x64)
Описание : Microsoft Windows Setup (x64)
Размер (байт): 1 629 402 470

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

Если вы желаете поделиться ссылкой на эту страницу в своей социальной сети, пользуйтесь кнопкой «Поделиться»

Оцените статью