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

Содержание
  1. Интеграция драйверов в установочный образ Windows 10 / Server 2012 R2
  2. Как интегрировать драйвера в образ Windows 10 с помощью PowerShell
  3. Интеграция драйверов в образ Windows Server с помощью DISM
  4. Интеграция драйверов
  5. На этой странице
  6. Включение протоколирования установки драйверов
  7. Размещение драйверов
  8. Параметры файла ответов
  9. Подключение системного образа
  10. Интеграция драйверов с помощью диспетчера пакетов
  11. Проверка правильности интеграции драйверов
  12. Сохранение системного образа
  13. Замечания об интеграции драйверов
  14. Утилита peimg
  15. Драйверы контроллеров устройств хранения
  16. Заключение
  17. Интеграция SATA/RAID драйверов
  18. Шаг 1 — Создание директорий
  19. Шаг 2 — Распаковка драйверов
  20. Шаг 2а — Распаковка драйверов Intel
  21. Шаг 3 — Подбор файлов
  22. Шаг 4 — Копирование файлов
  23. Шаг 5 — Редактирование секции [SourceDisksFiles] файла txtsetup.sif
  24. Шаг 6 — Редактирование секции [HardwareIdsDatabase] файла txtsetup.sif
  25. Шаг 7 — Редактирование секциий [SCSI.load] и [SCSI] файла txtsetup.sif
  26. Шаг 8 — Редактирование (создание) winnt.sif
  27. Заключение
  28. Благодарности

Интеграция драйверов в установочный образ 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, в которую планируется интегрировать дополнительные драйвера.

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.

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

Структура каталогов, с которой мы будем работать может быть той же самой: 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.

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

Посетителей: 32792 | Просмотров: 50522 (сегодня 0) Шрифт:

Процесс интеграции драйверов очень прост. Все драйверы размещаются в одной папке, причем они могут находиться как в ее корне, так и во вложенных папках. Затем подключается системный образ (install.wim) и с помощью диспетчера пакетов (pkgmgr.exe) осуществляется установка драйверов в образ.

На этой странице

Включение протоколирования установки драйверов

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

Windows Registry Editor Version 5.00

Размещение драйверов

Драйверы могут находиться в любой папке. В этой статье используется папка C:\VistaWork\Drivers, в которой размещены драйверы. Они могут находиться в корне папки или в собственных подпапках — это не имеет значения. Напоминаю, что для интеграции требуются распакованные драйверы (INF-файлы). Если вы используете пакеты драйверов с сайта DriverPacks.net, вы можете просто распаковать пакеты из архивов в эту папку.

Параметры файла ответов

Для интеграции драйверов используется отдельный файл ответов, поэтому создайте новый файл. Добавьте к проходу 2 offlineServicing компонент Microsoft-Windows-PnpCustomizationsNonWinPE | DriverPath | PathandCredentials и укажите для него параметры.

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

Больше ничего к файлу ответов добавлять не требуется. Сохраните файл с именем Drivers.xml в папке C:\VistaWork\xml. Пример файла ответов для интеграции драйверов вы найдете в статье Примеры.

Подключение системного образа

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

imagex /mountrw C:\VistaWork\DVD\sources\install.wim 4 C:\VistaWork\Mount

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

Интеграция драйверов с помощью диспетчера пакетов

Диспетчер пакетов (Pkgmgr.exe) — это средство командной строки, входящее в состав WAIK, которое можно использовать в автономном режиме для установки, удаления или обновления пакетов Windows. Интеграция драйверов в подключенный образ выполняется одной командой.

  • /o: — путь к автономной папке Windows, т. е. папке Windows подключенного образа.
  • /n: — путь к файлу ответов, используемому для интеграции.
  • /l: — путь к файлу журнала, создаваемому в процессе работы диспетчера пакетов (журнал пригодится для устранения неполадок, если таковые возникнут).

Установка драйверов в системный образ может занять некоторое время, поэтому наберитесь терпения и не прерывайте процесс. Когда работа диспетчера пакетов завершится, в окно командной строки снова можно будет вводить команды.

Проверка правильности интеграции драйверов

Для проверки того, возникали ли ошибки во время интеграции, введите в командной строке команду:

Если отобразится 0, интеграция прошла без ошибок. В противном случае придется изучать файл журнала drivers.log.txt в папке C:\VistaWork\Logs. При успешной интеграции последние несколько строк файла должны выглядеть примерно так:

В первой строке фрагмента вы видите количество установленных драйверов, а в последней — код возврата ошибки (0х0 означает, что ошибок не было).

Наконец, вы можете перейти в папку Windows\inf подключенного образа и убедиться, что в ней создались файлы oem*.inf. Звездочка в данном случае означает порядковый номер интегрированного драйвера, начиная с нуля.

Завершающим штрихом будет сохранение образа.

Сохранение системного образа

Для сохранения образа также требуется одна команда:

imagex /unmount /commit C:\VistaWork\Mount

Подробнее она рассматривалась здесь.

Примечание. Если во время интеграции произошли ошибки, не сохраняйте изменения в образе (т. е. не используйте ключ /commit в приведенной выше команде).

Замечания об интеграции драйверов

Утилита peimg

В этой статье рассматривается интеграция драйверов с помощью диспетчера пакетов (pkgmgr). Альтернативным способом интеграции является использование утилиты командной строки peimg, также входящей в состав WAIK. С помощью ключа /inf= можно указать путь к INF-файлу. Например, команда

peimg /inf=C:\VistaWork\Drivers\driver.inf C:\VistaWork\Mount\Windows

производит интеграцию driver.inf в образ, подключенный в папку C:\VistaWork\Mount. Пример командного файла, выполняющего рекурсивный поиск драйверов во всех вложенных папках и их последующую интеграцию в образ, вы найдете в обсуждении статьи. Дополнительную информацию вы найдете в справочном файле «Руководство пользователя среды предварительной установки Windows (Windows PE)».

Читайте также:  Перехват https трафика kali linux

Драйверы контроллеров устройств хранения

Если вы используете нестандартные контроллеры устройств хранения (mass storage), которые не обнаруживаются программой установки Windows, их драйверы необходимо интегрировать не только в системный образ (install.wim), но и в загрузочный образ Windows PE (boot.wim). Процедура интеграции аналогична описанной в статье.

Заключение

Интеграция драйверов в дистрибутив Windows Vista занимает всего несколько минут. Сделать это несколько проще, чем сконфигурировать их установку с USB- или DVD-диска. Однако этот способ менее управляем по сравнению с установкой драйверов с USB-диска.

Интеграция SATA/RAID драйверов

Посетителей: 373743 | Просмотров: 544811 (сегодня 0) Шрифт:

Описать интеграцию SATA/RAID драйверов я собирался давно. К сожалению, моя конфигурация не позволяет протестировать интеграцию таких драйверов, и следовательно самостоятельное написание статьи исключалось. В первоначальном варианте сайта на странице драйверов была ссылка на хорошую статью участника конференции MSFN GreenMachine, но она требовала от читателя некоторой подготовки. Именно на этой статье и основана страница, рассказывающая о SATA/RAID драйверах, на сайте MSFN. Эта страница появилась там относительно недавно, и не существовала на момент написания первой редакции данной статьи.

Так или иначе, нашелся человек по имени Michael Hollinger, который взял на себя труд объединить в одно руководство информацию, разбросанную по форуму MSFN и сайтам участников форума. Его руководство показалось мне несложным и дающим достаточно информации для осуществления процесса интеграции «от и до». Michael любезно разрешил перевести его руководство на русский язык. Оригинальное руководство (PDF, 1.28 Mb) является публично доступной информацией и может быть использовано только в бесплатных или некоммерческих публикациях. Дисклэймер и контактную информацию автора можно найти в тексте руководства. Недавно Мichael прислал мне новую версию своего руководства, которое и выложено сейчас у меня. Руководство стало максимально подробным, с громадным количеством скриншотов (в основном Проводника и Блокнота ;-). Но поскольку суть осталась прежней, я не стал менять содержание своей статьи.

Примечание . В статье описан ручной метод интеграции драйверов. Процесс можно автоматизировать при помощи nLite.

Надеюсь, что статья будет полезна не только людям, интересующимся автоматической установкой, но и всем, кто не имеет возможности установить SATA/RAID драйверы в процессе установки Windows по причине отсутствия флоппи привода. Все вопросы или замечания по данной статье, пожалуйста, задавайте в форуме. Теперь к делу.

Шаг 1 — Создание директорий

Создайте директорию для размещения всех драйверов и промежуточных файлов, которые будут конфигурироваться на предварительном этапе. В данной статье будет использоваться директория C:\preload, в которой надо создать поддиректории следующим образом C:\preload\$OEM$\$1\drivers

Шаг 2 — Распаковка драйверов

Вам понадобятся драйверы для SATA и/или RAID контроллеров. Их можно взять с CD, поставлявшегося в комплекте с материнской платой или ноутбуком. Более новые версии драйверов могут находиться на сайте производителя.

Распакуйте драйверы в директорию, названную по имени контроллера. Например, возможна такая структура

Примечание: названия поддиректорий, содержащих драйверы, должны состоять из не более чем восьми символов. Например, для материнской платы ABIT IC7-MAXIII есть два набора драйверов Silicon Images: Si3112r и Si3114r. В таком случае нужно создать следующие директории

Если ваши драйверы находятся внутри установочной программы (нередко встречается у Intel), то распакуйте их из *.ехе при помощи WinRAR, например.

На данном этапе у вас в соответствующих директориях должны быть, по крайней мере, следующие файлы

Шаг 2а — Распаковка драйверов Intel

Драйверы Intel представляют собой особый случай. Если у вас нет вышеуказанных файлов, то вероятнее всего у вас есть два кабинетных архива (*.cab) и setup.exe. В таком случае выполните следующую команду из командной строки:

где path — директория, которую вы выбрали для распаковки. После распаковки ваши драйверы будут либо в поддиректории XP либо drivers. Скопируйте содержимое данной директории. Следуя нашей структуре, вы должны скопировать содержимое в

Шаг 3 — Подбор файлов

Вы можете смело удалить файлы readme и любые директории, относящиеся к другим операционным системам (Windows 2000 и Windows 98). Если одни и те же драйверы предназначаются для XP и 2000, то их, понятное дело, удалять не надо. Продолжая пример с ABIT IC7-MAXIII у нас теперь такая картина:

В директории C:\preload\$OEM$\$1\drivers\IC7_MAX3\Intel находятся файлы

А в директории C:\preload\$OEM$\$1\drivers\IC7_MAX3\Si3112r находятся файлы

и так далее для каждого из контроллеров.

Шаг 4 — Копирование файлов

Если содержимое установочного диска Windows XP у вас еще не скопировано на жесткий диск, но сейчас самое время это сделать. Копируем в C:\XPCD. Затем скопируйте директорию $ОЕМ$ из C:\preload в C:\XPCD.

Теперь нужно сделать сжатые копии всех *.sys файлов и скопировать их в C:\XPCD\i386 при помощи утилиты makecab. Из командной строки запустите следующую команду:

makecab C:\XPCD\$OEM$\$1\drivers\motherboard\controller\controller.sys C:\XPCD\I386\controller.SY_

где motherboard — название директории, которое вы дали по названию материнской платы, controller — соответственно название директории контроллера, а controller.sys и controller.SY_ — названия ваших *.sys файлов. У вас может быть более одного *.sys файла в каждой директории, однако вам нужен только тот, имя которого совпадает с именем *.inf файла. Если взять за пример шаг 6, то из директории Si3112r нам нужен только Si3112r.sys. Аналогичным образом добавьте в i386 все остальные *.sys файлы.

Читайте также:  Установка линукс для ноутбука

Шаг 5 — Редактирование секции [SourceDisksFiles] файла txtsetup.sif

Откройте в текстовом редакторе файл txtsetup.sif расположенный в C:\XPCD\i386. Блокнот подойдет, хотя и не слишком удобен для данной цели. Главное, чтобы редактор не создавал ненужного форматирования, такого как переносы строк, например.

Найдите первую секцию [SourceDisksFiles], которая расположена в районе 189 строки. В самом начале секции [SourceDisksFiles] добавьте следующую строку

где controller.sys — имя файла, созданного на четвертом шаге. Аналогичным образом добавьте строки, соответствующие остальным *.sys файлам. Каждому файлу должна соответствовать одна строка. В нашем примере:

[SourceDisksFiles]
iaStor.sys = 1. 3_,4,1
Si3112r.sys = 1. 3_,4,1
Si3114r.sys = 1. 3_,4,1
viasraid.sys = 1. 3_,4,1

Рассказ о формате этих строк я решил вынести на отдельную страницу ввиду сложности материала.

Внимание! Для того, чтобы драйверы корректно устанавливались при инсталляции системы с жесткого диска или ее обновления с компакт-диска, вам нужно также внести изменения в файл dosnet.inf следующим образом:

Шаг 6 — Редактирование секции [HardwareIdsDatabase] файла txtsetup.sif

Не закрывайте txtsetup.sif и найдите секцию [HardwareIdsDatabase], находящуюся в районе строки 18800. Мы через минуту вернемся к этой секции, а пока рассмотрим файлы, находящиеся в директориях с драйверами. Там есть файлы, информацию из которых нужно скопировать в txtsetup.sif. Нам понадобится либо *.oem либо *.inf файл из каждой из них. Идем в первую директорию и действуем по следующему принципу: если есть одноименный *.sys файлу *.oem файл, то открываем его, а если нет, то открываем одноименный *.inf файл. Если используете *.oem файл, то найдите все строки, начинающиеся с PCI\VEN_, заключенные в кавычки. Если используете *.inf файл, то найдите секцию [Strings], где есть аналогичные строки (но без кавычек). Проигнорируйте строки, начинающиеся с %. Скопируйте каждую строку от начала до первой точки (не включая точку). Например, если строка PCI\VEN_8086&DEV_2652&CC_0104.DeviceDesc = «Intel(R) 82801FR SATA RAID Controller», то скопировать нужно только PCI\VEN_8086&DEV_2652&CC_0104 и больше ничего.

Теперь поместите скопированные строки в секцию [HardwareIdsDatabase] файла txtsetup.sif и добавьте к каждой = «sysfile«, где sysfile — имя вашего *.sys файла одноименного *.oem или *inf. файлу. В нашем примере в секции [HardwareIdsDatabase] это выглядит так:

[HardwareIdsDatabase]
PCI\VEN_8086&DEV_2652&CC_0104 = «iaStor»
PCI\VEN_8086&DEV_2652&CC_0106 = «iaStor»

PCI\VEN_8086&DEV_24DF&CC_0104 = «iaStor»
PCI\VEN_8086&DEV_25B0&CC_0104 = «iaStor»
PCI\VEN_1095&DEV_3112 = «Si3112r»
PCI\VEN_1095&DEV_3512 = «Si3112r»

PCI\VEN_1002&DEV_436E = «Si3112r»
PCI\VEN_1002&DEV_4379 = «Si3112r»
PCI\VEN_1002&DEV_437A = «Si3112r»
PCI\VEN_1095&DEV_3114 = «Si3114r»
PCI\VEN_1106&DEV_3149 = «viasraid»

Шаг 7 — Редактирование секциий [SCSI.load] и [SCSI] файла txtsetup.sif

Теперь найдите секцию [SCSI.load] в районе строки 19266. Добавьте следующую строку для каждого *.sys файла

где sysfile опять же имя вашего *.sys файла. В нашем примере в секции [SCSI.load] это выглядит так:

[SCSI.Load]
iaStor = iaStor.sys,4
Si3112r = Si3112r.sys,4
Si3114r = Si3114r.sys,4
viasraid = viasraid.sys,4

Теперь найдите секцию [SCSI] в районе строки 21613. Добавьте следующие строки для каждого *.sys файла.

где sysfile — имя вашего *.sys файла, a Description — любое описание, которое вы хотите дать контроллеру. Проще всего использовать описания из *.inf файла. В нашем примере это выглядит так:

[SCSI]
iaStor = «Intel(R) 82801FR/82801ER/6300ESB SATA RAID Controller»
Si3112r = «Silicon Image SiI 3×12 SATARaid Controller»
Si3114r = «Silicon Image SiI 3114 SATARaid Controller»
viasraid = «VIA Serial ATA RAID Controller»

На этом редактирование txtsetup.sif закончено. Закройте и сохраните файл.

Шаг 8 — Редактирование (создание) winnt.sif

Теперь настало время изменить winnt.sif (или создать новый, если у вас его еще нет). Подробнее о winnt.sif я рассказываю тут, поэтому остановлюсь лишь на секции [Unattended]. Для успешной установки драйверов необходимо наличие в секции следующих параметров

где path — путь к директории с драйверами контроллера. В нашем примере это выглядит так:

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

Если вас интересует только интеграция драйверов, и файл ответов создается исключительно для этой цели, то помимо указанных выше параметров добавьте секцию [Data] с таким содержимым:

Закройте winnt.sif и сохраните изменения (или сохраните ваш файл с именем winnt.sif в i386).

Заключение

В общем, на этом процедуру интеграции SATA/RAID драйверов можно считать законченной. Дальнейшие шаги оригинального руководства рассказывают о том, как создать загрузочный диск Windows XP. Не вижу смысла повторяться.

Благодарности

Остается лишь поблагодарить Майкла Холлингера и отдать должное тем людям, чьи книги, статьи и сообщения в форумах были использованы в его руководстве. Автор следует одному из общепринятых Американских стилей, используемых в научных публикациях. Я, уж извините, стиль выдерживать не буду 😉

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