Создание образа Windows 10 с собственным набором предустановленного ПО и настройками меню Пуск

  • Автор:

Windows10-custom-ISO-000.pngВ одном из наших прошлых материалов мы рассмотрели состав предустановленного ПО в Windows 10, а также некоторые вопросы связанные с его управлением и настройками меню Пуск. Вопреки распространенному мнению большую часть программ можно удалить штатными методами, а использование PowerShell вообще дает полный контроль. Но есть одно но! Все вносимые изменения касаются только локального ПК и локального профиля пользователя, что не подходит если вам нужно развернуть Windows 10 на некоторое число компьютеров, в этом случае лучшим способом будет создание собственного, заранее настроенного образа.

В рамках данной статьи мы не предполагаем глубокой модификации установочного образа, ограничившись выбором набора предустановленного ПО, собственными настройками меню Пуск и некоторыми "твиками" в системном реестре. В большинстве случаев этого достаточно, чтобы облегчить жизнь системного администратора и упростить процесс настройки рабочих станций после установки ОС.

Для работы нам понадобится оригинальный образ Windows 10 содержащий файл install.wim, образы со сжатым и зашифрованным файлом install.esd нам не подойдут. Также скачайте и установите на рабочем ПК Windows Assessment and Deployment Kit (ADK), из всего набора инструментов нам потребуются только Средства развертывания.

Windows10-custom-ISO-001.pngКроме образа нам также потребуется шаблон предварительно настроенного меню Пуск. Это можно сделать на любой рабочей станции, но проследите, чтобы в набор плиток не попали отсутствующие в образе приложения. На наш взгляд лучше всего произвести тестовую установку с целевого образа на виртуальную машину, настроить там меню Пуск и выполнить экспорт настроек. Ниже показан один из примеров такой настройки, набор приложений в нем выбран произвольно, поэтому настраивайте меню именно так, как нужно вам.

Windows10-custom-ISO-002.pngПосле того, как вы все настроили сделайте экспорт настроек командой PowerShell:

Export-StartLayout -Path D:\LayoutModification.xml

Где D:\LayoutModification.xml - расположение целевого файла.

Также, в настройках меню Пуск по умолчанию включена опция Иногда показывать предложения в меню "Пуск", которая время от времени выводит в самом верху ссылки на приложения Магазина и устанавливает их при клике на значок. Чтобы избежать такого поведения необходимо внести некоторые изменения в реестр. Поэтому подготовим файл импорта: создадим обычный текстовый документ со следующим содержимым и сохраним его как import.reg.

Windows Registry Editor Version 5.00

[HKEY_USERS\TMP\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager]
"SubscribedContent-338388Enabled"=dword:00000000

При желании вы можете добавить в этот файл и другие "твики", однако это выходит за рамки данной статьи. Обратите внимание, что мы импортируем изменения в несуществующую ветку HKEY_USERS\TMP, куда мы подключим ветвь HKEY_USERS\.DEFAULT из образа. Если же вам нужно внести изменения в другие ветви реестра образа, то добавьте в файл импорта необходимые псевдонимы. Напомним, что вы можете подключить файл реестра в любое место системного реестра собственной машины, назначив ему уникальное имя.

Теперь создадим набор рабочих папок, их следует располагать ближе к корню файловой системы и использовать короткие пути. В нашем случае это будут папки:

  • D:\iso - здесь будут располагаться файлы образа
  • D:\mnt - сюда будет развернут образ при монтировании
  • D:\tmp - для размещения дополнительных файлов, таких как шаблон меню и файл импорта реестра

После чего скопируем в D:\iso содержимое образа установочного диска. Как правило, образ содержит сразу несколько редакций Windows 10 и нам необходимо выяснить их набор и номер требуемой редакции, для этого выполним в PowerShell с правами администратора (здесь и далее используется среда PowerShell, если не указано иного) следующую команду:

Get-Windowslmage -ImagePath "D:\iso\sources\install.wim"

Где вам потребуется указать путь к файлу install.wim распакованного образа. В выводе вы получите перечисление всех редакций в образе:

Windows10-custom-ISO-004.pngВ нашем случае нас интересует редакция Pro под номером 4. Выполним ее монтирование:

Mount-WindowsImage -ImagePath "D:\iso\sources\install.wim" -Index 4 -Path "D:\mnt\"

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

Windows10-custom-ISO-005.pngТеперь, когда образ смонтирован, перейдем к встроенному ПО. Сначала получим список предустановленного ПО образа и выясним имена пакетов, для этого выполним:

Get-AppxProvisionedPackage -Path "D:\mnt\" | Format-Table DisplayName, PackageName

Windows10-custom-ISO-006.pngБольшинство приложений имеют понятные имена, за исклчением Cortana, которая скрывается за наименованием Microsoft.549981C3F5F10. Чтобы удалить приложение из образа воспользуемся командой:

Remove-AppxProvisionedPackage -Path "D:\mnt" -PackageName Microsoft.549981C3F5F10_1.1911.21713.0_neutral_~_8wekyb3d8bbwe

В данном случае мы удаляем Cortana. Мы не будем давать каких-либо рекомендаций по составу предустановленного ПО, каждый решает этот вопрос самостоятельно, с учетом собственных потребностей и предпочтений. В нашем примере мы также удалили приложения Office, OneNote, Sticky Notes и Feedback Hub.

Windows10-custom-ISO-007.png

Для изменения шаблона меню Пуск нам нужно просто скопировать файл LayoutModification.xml в нужное место образа:

copy D:\tmp\LayoutModification.xml D:\mnt\Users\Default\AppData\Local\Microsoft\Windows\Shell\LayoutModification.xml

И напоследок выполним импорт файла реестра. Прежде всего подключим к реестру рабочей машины ветвь HKEY_USERS\.DEFAULT образа:

reg load HKEY_USERS\TMP D:\mnt\Users\Default\NTUSER.DAT

В нашем случае мы подключили данную ветвь в HKEY_USERS\TMP, который указан в нашем файле импорта. После чего импортируем в реестр содержимое файла:

reg import D:\tmp\import.reg

По завершению операции ветвь реестра следует отключить:

reg unload HKEY_USERS\TMP

Все необходимые изменения выполнены, поэтому размонтируем образ с сохранением внесенных изменений:

Dismount-WindowsImage -Path "D:\mnt\" -Save

Windows10-custom-ISO-008.png

После выполнения данной команды содержимое директории D:\mnt будет очищено, а все изменения будут применены к файлам распакованного образа в D:\iso. Все что нам остается - это собрать новый ISO-файл, для этого воспользуемся Средой средств развертывания и работы с образами, запустите одноименную консоль с правами администратора и выполните в ней следующую команду:

oscdimg -h -m -o -u2 -udfver102 -bootdata:2#p0,e,b"D:\iso\boot\etfsboot.com"#pEF,e,b"D:\iso\efi\microsoft\boot\efisys.bin" -lMyISO "D:\iso" "D:\Win10.iso"

Windows10-custom-ISO-009.pngНа первый взгляд - достаточно страшное "заклинание", но не будем пугаться раньше времени. В параметрах bootdata мы передаем пути к файлам etfsboot.com и efisys.bin в папке образа, которые отвечают за EFI-загрузчик. Ключ -l задает имя образа, которое указывается без пробелов, затем перечисляем папку с образом и место расположения итогового ISO-файла.

Если вы используете для установки флеш-накопитель, то просто можете скопировать на него содержимое папки D:\iso с заменой файлов.

Теперь можно выполнить пробную установку и убедиться, что все настроено именно так, как мы задумывали:

Windows10-custom-ISO-010.pngКак видим, собрать собственный образ Windows 10 несложно, у нас все это заняло не более получаса, где основное время заняло монтирование/размонтирование образа и создание ISO-файла.

Дополнительные материалы:


  1. Развертывание Windows XP с помощью средства Sysprep
  2. Преобразование ISO образа Windows 7 в универсальный ISO диск
  3. Создаем свой дистрибутив Windows 7
  4. Предустановленное ПО в Windows 10 - мифы и реальность
  5. Создание образа Windows 10 с собственным набором предустановленного ПО и настройками меню Пуск