Создание базового загрузочного диска Windows PE. Что такое windows pe

WinPE (Windows Preinstallation Environment) – это урезанная версия операционной системы Windows. Главное отличие WindowsPE от стандартной Windows заключается в том, что ее можно загрузить со сменного носителя (CD, DVD, USB). Т.е. при наличии диска с WinPE вы сможете запустить компьютер и восстановить работоспособность существующей системы, если она оказалась повреждена.

Загрузившись с WinPE мы получаем полный доступ к жестким дискам компьютера (в т.ч. к NTFS-томам, реестру, настройкам и драйверам), следовательно – можем заменить поврежденные системные файлы оригинальными или, например, произвести какие-то операции с разделами диска.

Существуют как официальные версии WindowsPE от Microsoft, так и различные сборки. Первая официальная версия (Windows PE 1.0) была собрана на основе Windows XP, а последняя на момент написания данной статьи (Windows PE 4.0) – на основе Windows 8.

WinPE от Microsoft имеют приличный вес, но при этом малофункциональны. Поэтому среди пользователей большей популярностью пользуются, так называемые, сборки – наборы программ, работающих в среде WindowsPE. Пожалуй, самой известной такой сборкой является диск аварийного восстановления ERD Commander . Изначально он являлся разработкой Winternals Software, но в 2006 году компанию приобрел Microsoft и с тех пор ERD Commander стал частью набора программных средств Microsoft Desktop Optimization Pack.

В составе ERD Commander имеется широкий набор инструментов, с помощью которых вы можете устранить серьезные неполадки в работе вашей системы, изменить забытый пароль администратора, восстановить удаленные файлы и т.д. Более подробно об ERD Commander вы можете прочитать в .

С выходом Windows 8 обновилась и среда предустановки Windows PE. Появлению Windows 8.1 сопутствовал выход PE 5.0, a Windows 8.1 Update соответствует версия PE 5.1. Среда Windows PE входит в Windows ADK, который теперь объединяет средства развертывания и оценки различных параметров системы.

Что входит в Windows ADK

Раньше инструменты для подготовки операционной системы к развертыванию и оценки ее работы поставлялись отдельными наборами. Теперь Windows Assessment and Development Kit (далее ADK) объединил несколько пакетов.

Deployment and Imaging Tools и Windows Preinstallation Environment

Эти средства для подготовки Windows к развертыванию ранее входили в WAIK, а Windows System Image Manager даже не изменился внешне.

Windows Performance Toolkit

Набор инструментов для оценки производительности Windows, с которым вы уже знакомы , раньше поставлялся в наборе SDK. Теперь в WPT входят новые средства для записи различных сценариев работы приложений и системы (Windows Performance Recorder) и просмотра записей (Windows Performance Analyzer).

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

Загрузка и установка Windows ADK

Microsoft не предлагает к загрузке ISO, но с помощью установщика вы можете скачать полный комплект (инструкции на английском) и сделать из него образ, если необходимо. После установки вы найдете все наборы в папке Program Files\Windows Kits. Впрочем, если у вас 64-разрядная система, туда упадет лишь часть средств развертывания, а остальное окажется в Program files (x86).

Дальше в программе:

Что нового в Windows PE

Полный список изменений в разных версиях PE есть на этой странице библиотеки TechNet . Например, на Windows PE 4.0 основана среда предустановки Windows 8, что повлекло ряд значимых изменений по сравнению с Windows PE 3.1. Так, расширился список пакетов, которые можно внедрить в PE, в частности добавились:

  • .NET (WinPE-NetFX) обеспечивает запуск приложений, которым требуется.NET Framework.
  • Powershell (WinPE-PowerShell) позволяет использовать PowerShell в среде PE. В состав ADK входит новая версия Powershell.
  • DISM PowerShell Cmdlets (WinPE-DismCmdlets) представляют собой новые командлеты третьей версии Powershell для создания и обслуживания WIM образов
  • Remote Network Driver Specification (WinPE-RNDIS) пригодится для доступа к удаленным клиентам из Windows PE
  • Windows PE Secure Startup (WinPE-SecureStartup) нужен для управления BitLocker и TPM.

Изменения в Windows PE 5.0 и 5.1 не такие значительные. Но если 5.0 вошла в ADK, то 5.1, добавляющая поддержку WimBoot , на момент последнего обновления этой статьи нужно применять в качестве обновления к 5.0 .

Подготовка рабочей папки

Введите в поиск среда средств (в англ. версии — deployment ) и запустите от имени администратора командную строку средств развертывания. По сути это файл DandISetEnv.bat из папки Deployment and Imaging Tools , задающий необходимые переменные среды для быстрого доступа к инструментам командной строки.

Для работы с автоустановкой и Windows PE у меня давно создана переменная среды %ua% , ведущая в папку unattend в корне профиля. Вы можете создать такую же переменную на постоянной основе, либо только в рамках текущей сессии командной строки, как показано ниже.

:: Задайте путь к рабочей папке (избегайте кириллицы и пробелов в пути) set ua=C:\unattend:: Создайте папку md %ua%

# Задайте путь к рабочей папке (избегайте кириллицы и пробелов в пути) $env:ua = "C:\unattend" # Создайте папку md $env:ua

Все дальнейшие команды будут использовать переменную %ua% вне зависимости от того, где у вас создана рабочая папка.

Копирование файлов Windows PE в рабочую папку

В ADK входит удобный файл copype.cmd , который делает эту работу одной командой.

Учтите, что с помощью DISM из 32-разрядной PE можно обслуживать Windows любой разрядности, а из 64-разрядной PE — только 64-разрядную . Во всех моих командах подразумевается создание 32-разрядной среды Windows PE. Для подготовки 64-разрядного диска замените везде x86 на amd64 .

В командной строке выполните:

Cd "..\Windows Preinstallation Environment" copype.cmd x86 %ua%\winpe_x86\

Первая команда переходит в папку с наборами файлов Windows PE, а вторая запускает файл copype.cmd с параметрами x86 для создания 32-разрядной PE и %ua%\winpe_x86\ для копирования необходимых файлов в эту папку, с которой мы будем работать дальше.

Работа WIM-образом Windows PE

Все действия нужно выполнять в командной строке средств развертывания, которую вы запустили с полными правами на предыдущем этапе.

Шаг 1 – Подключение образа

Подключение WIM-образа выполняется одной командой с помощью утилиты DISM. Если вы часто работаете с WIM-образами, не повредит сначала очистить все предыдущие подключения.

Dism /Cleanup-Wim dism /Mount-Wim /WimFile:%ua%\winpe_x86\media\sources\boot.wim /index:1 /MountDir:%ua%\winpe_x86\mount

Шаг 2 – Добавление пакетов в образ

Пакеты находятся в папке WinPE_OCs , и мы добавим четыре пакета:

  • .Net Framework
  • PowerShell
  • командлеты DISM

Первая команда переходит в папку, а вторая добавляет пакеты:

Cd x86\WinPE_OCs dism /image:%ua%\winpe_x86\mount /Add-Package /PackagePath:WinPE-NetFx.cab /PackagePath:WinPE-PowerShell.cab /PackagePath:WinPE-DismCmdlets.cab /PackagePath:WinPE-wmi.cab

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

Вы можете добавить любые другие пакеты из папки WinPE_OCs. Например, WinPE-Scripting.cab обеспечит работу сценариев Windows Script Host (WSH). Но учтите, что каждый пакет увеличивает размер образа Windows PE.

Важно! Для работы PowerShell необходим.NET Framework, поэтому сначала нужно добавлять пакет WinPE-NetFx4.cab , и только вслед за ним WinPE-PowerShell3.cab и WinPE-DismCmdlets.cab .

Поскольку добавление пакетов сродни установке программ, при импорте WinPE-PowerShell3.cab без пакета.NET будет возникать ошибка 0x800f081e . Создавая свой первый диск, я добавлял пакеты в правильном порядке. Но потом случайно изменил его, когда собрал все пакеты в одну команду. Для решения проблемы пришлось плясать с бубном (в прямом смысле слова:)

Проверить наличие пакетов в образе вы можете командой:

Dism /image:%ua%\winpe_x86\mount /Get-Packages

Шаг 3 – Добавление драйверов

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

Если возникла необходимость, с помощью DISM можно добавить:

  • отдельный драйвер, указав путь к INF-файлу
  • все драйверы из папки, указав путь к ней и ключ /recurse

Примеры этих команд:

Dism /Image:%ua%\winpe_x86\mount /Add-Driver /Driver:C:\drivers\mydriver.INF dism /Image:%ua%\winpe_x86\mount /Add-Driver /Driver:C:\drivers /recurse

Шаг 4 – Добавление своих утилит и сценариев

У меня есть папка Tools , где хранятся различные утилиты и средства командной строки. Я всегда включаю ее в состав Windows PE, добавляя в корень диска.

Xcopy /e /y "%userprofile%\PortableSoft\Tools" %ua%\winpe_x86\media\Tools\

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

Видно, что.NET Framework успешно добавлен, поскольку отображается список командлетов DISM в PowerShell 3. В ближайшее время я покажу, как использовать их для работы с WIM-образами из Windows PE.

Чтобы не терять время зря, вы пока можете прочесть интересные факты и полезные советы на тему Windows PE, а также поэкспериментировать с запуском приложений и заменой интерфейса командной строки на любимый файловый менеджер.

А вы пользуетесь Windows PE или другими дисками собственного изготовления? Расскажите в комментариях, какие диски вы используете для обслуживания и восстановления системы!

В данной статье будет рассказано, как вручную создать собственную сборку Windows PE, содержащую те возможности и компоненты, которые отсутствуют там по умолчанию, но их наличие необходимо в подобном инструменте. Также дам важный совет - не бойтесь отходить от данной инстукции. Воображайте. Находите нестандартные методы решения проблемы. Именно благодаря такому подходу вы сможете создать наиболее функциональную сборку.

Ядро

Начинать создание сборки следует с ядра. Ядро Windows PE содержится в пакете Windows AIK для Windows 7.
Далее необходимо запустить командную строку средств развертывания и выполнить команду
copype.cmd <архитектура> <путь> При том каталог, указанный в качестве аргумента copype.cmd, не должен существовать.
Вы можете создать сборки для архитектур x86,x64 и Itanium(x86,amd64,ia64)

Структура сборки

Проще говоря, сборка – это то, что вы получили в целевой папке после работы сценария copype.cmd. Работать сборка не может, ее необходимо прежде всего поместить на носитель и написать загрузчик. После этого ее уже можно будет назвать пользовательски настроенной системой Windows PE 3.0.

Сборка состоит из папок ISO, в которой находится содержимое, копируемое на носитель при подготовке загрузочного накопителя, а именно основа загрузчика – папки boot, efi, sources, файл bootmgr.
Также есть пустая папка mount, предназначенная для монтирования образа.
Еще там хранится файл etfsboot.com, предназначенный для создания загрузчика на CD\DVD диске
И самое главное, это файл winpe.wim, хранящий собственно систему Windows PE
Итак, создание настроенной системы Windows PE 3.0 представляет собой задачу из двух этапов.

  1. Редактирование файла winpe.wim (создание сборки)
  2. Создание загрузчика

Алгоритм создания сборки

Монтирование winpe.wim

Начнем создание сборки с монтирования образа winpe.wim, который содержит в себе систему Windows PE.
Под монтированием подразумевается, что образу в wim-файле ставится в соответствие некоторая папка в файловой системе.
При монтировании все содержимое образа оказывается связанным с папкой, но физически не копируется.
Для монтирования образа используется соответствующая команда
Dism /Mount-Wim /WimFile:<Путь>\winpe.wim /index:<индекс образа в wim-файле> /MountDir:<Путь>\mount

Таким образом, указывается необходимая информация об монтировании образа: имя и путь к wim-файлу, номер образа в файле, путь для монтирования.

Пакеты Windows PE

Windows AIK содержит в себе компоненты, которые используются для расширения функционала Windows PE. Они называются пакетами. Существует множество пакетов, при помощи которых можно создать образ, с которого происходит загрузка при установке ОС, также есть компоненты предназначенные для поддержки доступа к данным, средств восстановления, а также для инструментария WMI.
Имя пакета Описание
WinPE-FONTSupport- Дополнительная поддержка шрифтов для следующих языков: ja-JP, ko-KR, zh-CN, zh-HK и zh-TW.
WinPE-HTA Поддержка HTML-приложений. Позволяет создавать приложения с графическим интерфейсом пользователя, используя обработчик сценариев Internet Explorer и службы HTML.
Winpe-LegacySetup Пакет компонента программы установки Media. Все файлы программы установки из папки \Sources на носителе с Windows. Добавьте этот пакет при обслуживании установки или папки \Sources на носителе с Windows. Он должен добавляться с пакетом компонента программы установки (Setup). Чтобы добавить новый файл Boot.wim на носитель, дополнительно к пакетам Setup и Media добавьте любой дочерний пакет. Данный пакет необходим для поддержки установки Windows Server® 2008 R2.
WinPE-MDAC Поддержка компонентов доступа к данным MDAC Microsoft®. Позволяет отправлять запросы к серверам SQL с объектами Active Directory (ADO). Пример использования: создание динамического файла автоматического запуска на основе уникальных системных сведений.
WinPE-PPPoE Включает поддержку протокола PPPoE. Позволяет создавать, подключать, отключать и удалять подключения по протоколу PPPoE из среды предустановки Windows.
WinPE-Scripting Поддержка сервера сценариев Windows (WSH). Позволяет производить пакетную обработку файлов с помощью объектов сценариев сервера сценариев Windows.
WinPE-Setup Пакет компонента программы установки (родительский). Все файлы программы установки из папки \Sources, общей для клиента и сервера.
WinPE-Setup-Client Пакет компонента программы установки клиента (дочерний). Файлы фирменной символики клиента для программы установки. Необходимо добавить после пакета компонента программы установки.
WinPE-Setup-Server Пакет компонента программы установки сервера (дочерний). Файлы фирменной символики сервера для программы установки. Необходимо добавить после пакета компонента программы установки.
WinPE-SRT Пакет компонента среды восстановления Windows. Предоставляет платформу восстановления для автоматической диагностики и восстановления системы, а также создания специализированных решений по восстановлению.
WinPE-WMI Поддержка инструментария управления Windows (WMI). Подмножество поставщиков WMI, обеспечивающее минимальную диагностику системы.
WinPE-WDS-Tools Пакет средств служб развертывания Windows. Содержит интерфейсы API, предоставляющие многоадресный сценарий с использованием пользовательского клиента служб развертывания Windows и служебную программу создания образов.

Для добавления пfкета существует команда:
Dism /image:<путь >\mount /Add-Package /PackagePath: "C:\Program Files\Windows AIK\Tools\PETools\<архитектура>\WinPE_FPs\<имя пакета>.cab"

Профилирование

Профилирование – это процесс уменьшения размера образа за счет неиспользуемых компонентов
Профилирование выполняется следующим образом: сначала оно включается через программу DISM, затем сборка запускается, в ней выполняют требуемые от неё операции, сохраняют профиль, далее сборка подключается через программу DISM и применяется профиль.
Такой метод довольно эффективно снижает размер образа, но его полезно применять в узкой корпоративной среде. В данной инструкции же я создаю УНИВЕРСАЛЬНУЮ сборку, поэтому профилирование будет выполняться несколько иначе.
Оно будет заключаться в РУЧНОМ удалении некоторых компонентов, а именно языковых пакетов, кроме русского и английского.
Также на завершающем этапе будет выполнено экспортирование wim-образа в другой файл с целью очистки индексов устаревших файлов(об этом позднее)
Таким образом, в каталоге mount\Windows\System32 необходимо удалить все каталоги с именами языковых пакетов, кроме ru-ru и en-us.

Добавление компонентов из Windows 7

После добавления пакетов функционал Windows PE расширяется, но недостаточно для выполнения большей части административных задач.
Поэтому я предлагаю расширить возможности путем добавления некоторых компонентов из Windows 7, а именно
  1. Компоненты Проводника – дают возможность вызвать диалоговое окно «Открыть» из диспетчера задач.
  2. Nslookup – утилита для тестирования DNS-серверов
  3. Fc – утилита для сравнения файлов
  4. Diskcomp – утилита для сравнения дискет
  5. Diskcopy – утилита для копирования дискет
  6. Mstsc.exe – программа «Подключение к удаленному рабочему столу», таким образов, Windows PE превращается в «тонкий клиент»
Для этого необходимо установить систему Windows 7 Максимальная (той же архитектуры, что и сборка Windows PE)и SP1 на виртуальную машину. После этого подключите виртуальный жесткий диск от этой ВМ в консоли diskmgmt.msc.
Таким образом, вы будете копировать файлы с этого VHD в сборку
Копируйте указанные в таблице файлы.
Всегда оставляйте для файла то же местоположение, что и на VHD! То есть, если файл находился в каталоге %systemroot%/system32/ru-ru, то вы должны скопировать его в тот же подкаталог каталога mount сборки.
Имя файла Расположение
Компоненты проводника
Explorer.exe %systemroot%
Shell32.dll %systemroot%/system32
SHELL.dll %systemroot%/system32
Shellstyle.dll %systemroot%/system32
Nslookup
Nslookup.exe %systemroot%/system32
Fc,diskcomp,diskcopy
Fc.exe %systemroot%/system32
Diskcomp.exe %systemroot%/system32
Diskcopy.dll %systemroot%/system32
Diskcopy.exe %systemroot%/system32
Клиент RDC
Mstsc.exe %systemroot%/system32
Mstscax.dll %systemroot%/system32
Msacm32.dll %systemroot%/system32
d3d10core.dll %systemroot%/system32
d3d10.dll %systemroot%/system32
Dxgi.dll %systemroot%/system32
mcm32.dll.mui %systemroot%/system32/ru-ru
mstscax.dll.mui %systemroot%/system32/ru-ru
mstsc.exe.mui %systemroot%/system32/ru-ru

Либо вы можете скачать все эти файлы отсюда . Содержимое рассортировано по каталогам

Добавление стороннего ПО

Будет добавлено следующие программы и сценарии:
Название ПО Команда запуска Описание
CPU-Z 1.57 cpuz Используется для получения информации об аппаратном обеспечении
DnsDataView 1.15 dnsdataview Используется для получения информации с DNS-серверов
EasyTerm 4.3 easyterm Telnet-клиент
Everest 5.02 everest Используется для получения подробной информации об аппаратном обеспечении и проведения его тестов
Free Commander 2008 fcom Двухпанельный NC-образный файловый менеджер
FirefoxPortable4.01 firefoxportable Портативная версия популярного интернет-браузера
HDDScan 2.8 Hddscan Утилита для проверки качества поверхности жёстких дисков
HD_Speed Hdd Утилита для проверки скорости работы жесткого диска
ImageX imagex Утилита от Microsoft, предназначенная для работы с WIM-файлами
IpTools 2.58 ip_tools Набор сетевых утилит
Macview 1.13 macview Программа для определения производителя устройства по его MAC-адресу
MemTest memtest Утилита для проверки оперативной памяти
Netagent 3.2 netagent Набор сетевых утилит
NmapW 2.0.0.1 nmap(консольный интерфейс), nmpw32(графический интерфес) Мощный сканер портов
PortScanner 1.0 portscanner Сканер портов
Putty putty SSH и Telnet-клиент
Radmin Viewer 3.4 radmin Утилита для подключения к серверной части приложения Radmin
Recuva 1.19 recuva Восстановление удаленных файлов
Smart Sniffer smsniff Простой и удобный сниффер
Space Monger 1.4 spacemonger Анализатор дискового пространства. Работает в удобном графическом режиме
Sysinternals ---- Ограниченный набор утилит sysinternal от Марка Руссиновича. Сохранены оригинальные названия программ
Undelete Plus undelete Программа для восстановления удаленных файлов.
Wdsmcast wdsmcast Консольная утилита от Microsoft, предназначенная для работы с WDS-сервером
WIM2VHD.wsf cscript “Z:\Program Files\soft\wim2vhd.wsf” Сценарий для конвертации образов из WIM файлов в файлы виртуального жесткого диска
WinRar 3.71 winrar Многофункциональный архиватор

Список программ из набора sysinternals(о их назначении вы можете прочитать на сайте http://technet.microsoft.com/ru-ru/sysinternals)

Accesschk
AccessEnum
Clockers
Contig
Dbgview
Diskext
DiskView
Du
Efsdumpo
Handle
Listdlls
Loadord
Ntfsinfo
Procexp
Procfeatures
Procmon
Sdelete
Streams
Strings
Tcpvcon
Tcpview
Volumeid
Whois
Psexec
Psfile
Psgetsid
Psinfo
Pskill
Pslist
Psloggedon
Psloglist
Pspasswd
Psservice
Psshutdown
Pssuspend

Все это ПО должно быть помещено в папку \mount\Program Files\soft\
Скачать подборку можно отсюда .
И помимо этого, я решил изменить стандартный фон «рабочего стола». Я указал этот термин в кавычках, поскольку помимо фонового рисунка он ничего не содержит, вследствие отсутствия графической оболочки.
Фоновое изображение берется из файла winpe.bmp из каталога %systemroot%/system32
Скачать его можно отсюда

Редактирование реестра Windows PE


Как известно, в ОС Windows файлы реестра хранятся в папке %systemroot%/system32/config
Для их редактирования используется редактор реестра regedit.exe
Чтобы подключить реестр сборки Windows PE, необходимо выполнить команду «Подключить куст» из меню файл программы «Редактор реестра». В диалоговом окне указать файл реестра сборки, ввести имя раздела.
После этого можно редактировать любые параметры реестра Windows PE, учитывая ее функциональные ограничения.

Настройка Windows PE

Windows PE может быть настроена так, как необходимо администратору. Для этого существует несколько средств.
Вы можете изменить путь к рабочей зоне и ее размер, настроить автоматически выполняемый командный сценарий и прочее.
Одним из средств настройки является файл Winpeshl.ini
Этот INI-файл предназначен для настройки программы оболочки.
По умолчанию не существует, в качестве оболочки используется cmd.exe
Довольно хорошей идеей является настройка в качестве оболочки файл-менеджера FreeCommander, однако я не буду этого делать, так как на мой взгляд, командно-ориентированный интерфейс ближе и удобнее для администратора, и а графический файл-менеджер нужен лишь для решения объемных задач, когда cmd тормозит работу.
Поэтому я не буду создавать файл winpeshl.ini, однако дам обзор его синтаксиса
Обратите внимание, что если вы настроите собственную программу оболочку, то не будет выполняться файл startnet.cmd! Поэтому для увеличения функциональности среды(поддержка сети и Plug and Play) следует добавить команду wpeinit в раздел LaunchApps.
Вообще, благоразумнее использовать раздел LaunchApps, так как он позволяет использовать параметры командной строки и выполнять несколько команд. При этом не стоит использовать оба раздела одновременно, так как это приведет к неработоспособности конфигурационного файла.
AppPath = %SYSTEMDRIVE%\myshell.exe %SYSTEMDRIVE%\mydir\application1.exe, {option}
Выход из программы оболочки ведет к перезагрузке ПК.Файл winpeshl.ini должен хранится в каталоге %systemroot%/system32
Для автозапуска приложений либо для автоматизации каких-либо иных действий в Windows PE существует файл startnet.cmd. По умолчанию содержит строку запуска программы wpeinit, предназначенной для окончательной инициализации среды Windows PE, добавляя сетевые возможности и поддержку самонастраиваемых устройств. Файл startnet.cmd хранится в каталоге %systemroot%/system32 Его синтаксис стандартен для cmd-файлов.

Также при помощи программы DISM вы можете изменить параметры рабочей зоны, т.е. виртуального диска, создаваемого при загрузке Windows PE Иными словами, рабочая зона – это то же самое что и RAM-диск в системе MS-DOS
DISM /image:<путь >\mount /Set-TargetPath:<буква>:\ - устанавливает путь к рабочей зоне. По умолчанию – X:
DISM /image:<путь >\mount /Set-ScratchSpace:64 - установка размера рабочей зоны. По умолчанию - 32 Мб.
Стоит отметить, что в качестве размера рабочей зоны можно задавать значения 32,64,256 и 512
Также существует несколько других команд DISM для работы со смонитрованным образом Windows PE:
Dism /image:<путь>\mount /Get-Packages – отобразить включенные в образ пакеты
Dism /image:<путь>\mount /Get-Drivers – отобразить включенные в образ пакеты
Dism /image:<путь>\mount /Get-Intl – отобразить язык по умолчанию для смонтированного образа
Dism /image:<путь>\mount /Get-PESettings - отобразить инфомция о настройках Windows PE
Dism /image:<путь >\mount /Add-Driver /driver:<путь к драйверу> – добавить в образ драйвер

Добавление драйверов


Чтобы добавить в сборку драйвер в более удобном графическом режиме, необходимо воспользоваться Windows Deployment Services
Для этого необходимо:
  1. Открыть консоль управления WDS
  2. Выполнить команду «Добавить загрузочный образ» из контекстного меню элемента «Образы загрузки» дерева консоли
  3. В открывшемся диалоговом окне выбрать образ
  4. Изменить имя образа и его описание, если требуется. Я всегда указываю в описании назначение конкретной сборки и включенные в нее программные средства
  5. По окончании процесса добавления образа, из контекстного меню добавленного образа вызвать команду «Добавить пакеты драйверов к образу»
  6. Задать условия отбора драйверов, выбрать требуемые драйвера(имеется в виду, что они уже добавлены в хранилище)
  7. По окончании процесса добавления выполнить команду «Экспортировать образ» из контекстного меню данного образа. Указать путь и имя образа, нажать кнопку «Сохранить».
Экспортированный образ будет содержать все добавленные драйвера.
Я рекомендую добавлять драйвера сетевых адаптеров, используемых в вашей организации, особенно если они были выпущены сравнительно недавно. Однако предварительно протестируйте сборку без драйверов. Если сетевые адаптеры «видны» и так, то не стоит добавлять драйвера, увеличивая тем самым размер образа.

Размонтирование и оптимизация образа

После выполнения всех вышеперечисленных этапов вы имеете универсальную сборку Windoiws PE, которую вы можете использовать для различных целей, включая использование в качестве тонкого клиента.
Но для того, чтобы изменения, внесенные в содержимое папки mount были применены к образу, необходимо размонтировать образ с подтверждением изменений.
Это делается при помощи команды
DISM /Unmount-Wim /MountDir:<путь>\mount /Commit Процесс размонтирования состоит из двух этапов – запись изменений в образ, и очистка папки монтирования.
По окончании процесса редактирования размер wim-файла увеличится, однако его можно оптимизировать, путем обновления индексов содержимого в wim-файле.
Делается это при помощи команды
imagex /export <путь>\winpe.wim 1 <путь>\ISO\sorces\boot.wim «Windows PE 3.0»

Работа с Windows PE

Обратите внимание, что Windows PE отличается от обычной версии Windows в первую очередь, своим командно-ориентированным интерфейсом. Не закрывайте окно командной строки. Это приведет к перезагрузке ПК. Диспетчер задач вы можете вызвать путем ввода команды taskmgr, комбинация CtrlAlt Delete не работает. Отсутствует стандартный проводник. Однако, если вы добавляли все библиотеки, указанные выше, вы можете использовать диалоговое окно «Открыть» из диспетчера задач. В Windows PE отсутствует консоль mmc и оснастки. Поэтому стоит привыкнуть работать в консольном режиме, либо использовать стороннее ПО.
Размер образа, созданного по моей инструкции – 220Мб, если удалить что-то ненужное вам, то образ может поместиться на mini-CD диск. Также вы можете поместить его на загрузочный флэш-накопитель или использовать WDS для удаленной загрузки. Если Windows PE будет использоваться как тонкий клиент, то вы можете спокойно использовать бездисковые рабочие станции для работы.
В Windows PE содержится команда wpeutil, при помощи которой вы можете:
Изменить размер файла подкачки.(по умолчанию, C:\pagefile.sys, 64 Мб)
wpeutil CreatePageFile /path= /size=<размер>
Обратите внимание, что если в указанном есторасположении уже имеется файл подкачки, и команда создает файл подкачки меньший по размеру, чем существующий, то это может вызвать ошибку
Отключить или включить брандмауэр.
wpeutil DisableFirewall|EnableFirewall
Реинициализировать сеть.
wpeutil InitializeNetwork
Задать раскладку клавиатуры
wpeutil SetKeyboardLayout <код раскладки клавиатуры>
Задать язык
wpeutil SetMuiLanguage <язык>[;<язык>]
Можно задать несколько языков в приоритетном порядке.
Задать региональные настройки пользователя.
wpeutil SetUserLocale <язык>[;<язык>]
Можно задать несколько региональных настроек в приоритетном порядке.
Выключить компьютер
wpeutil shutdown
Перезагрузить компьютер
wpeutil reboot

На этом я закончу рассмотрение команд wpeutil. Более подробную информацию можно получить в справке по этой команд, вызываемой путем ввода wpeutil /?

Итог

На этом процесс создания сборки завершен.
Системные требования для данной сборки минимальны

Процессор – 1 Ггц.
ОЗУ –384 Мб.
Сборку, созданную при написании этой статьи можно скачать отсюда .

Повторюсь, напомнив вам – данная статья – не строгая инструкция. Это основа для дальнейшего творчества. Единственное, чего вы не имеете права делать – это дизассемблировать и переписывать код ядра Windows PE. В остальном, всё зависит от вашей фантазии и запросов. Я продолжаю вести работу над совершенствованием и увеличением функционала с целью расширить область применения среды. Так, на ближайшей повестке дня:

  • Разблокировка поддержки WiFI
  • Интеграция IE9, дабы не пользоваться Firefox
  • Наведение порядка в системных библиотеках, так как многие программы сторонних разработчиков не работают в Windows PE
  • Написание удобной графической оболочки, аналогичной GNOME, но удобной и содержащей только то, что необходимо администратору, либо частичная интеграция оболочки explorer.exe
  • Интеграция консоли управления mmc.exe
  • Создание мультизагрузочного дистрибутива Windows PE, то есть вы сможете выбрать, что загружать – определенную сборку Windows PE,либо же setup.exe для установки полнофункциональной Windows


Добрый день уважаемые читатели блога, наконец дошли руки до написания третьей части статьи, в которой мы создаем свою сборку Windows 10. Если кто читает не сначала, то отправляю вас на первую часть в которой создается . Хочу отметить, что в первой части мы поставили, уже ADK, но так как вышел Redstone и у Microsoft теперь для каждой десятки свой ADK, показываю, где и как скачать нужный, у кого уже стоит, просто пролистайте чуть ниже и переходите к пункту с WinPE.

Во второй части мы с вами обезличили все персональные данные Windows 10 redstone и выключили его в режиме OOBE (out of box experience). Теперь нам с вами нужно из данной виртуальной машины получить wim образ, который мы и будем потом интегрировать в наш дистрибутив.

Для решения данной задачи нам необходим комплект windows adk для windows 10, и некоторые его утилиты.

  • WinPE > урезанная версия операционной системы с нее мы будем загружаться.
  • ImageX > утилита для захвата образа wim

Вот как это выглядит на схеме, мы загружаемся с загрузочной флешки или ISO с средой WinPE Windows 10, на нашу виртуальную машину (Ту которая выключена, у вас это может быть эталонный компьютер), и с помощью командной строки и утилиты imageX захватываете образ wim. Данный образ wim по сути и будет вся ваша система, которую вы до этого подготовили для создания образа с Windows 10 redstone.

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

И так давайте скачаем с вами ADK для Windows 10. Скачать его можно по ссылке ниже. Учтите, что скачать его нужно именно для своей версии сборки.

https://developer.microsoft.com/ru-ru/windows/hardware/windows-assessment-deployment-kit

Недавно же мы с вами устанавливали windows 10 redstone , у нее версия была 1607.

В итоге вы скачаете маленький файл, полтора мегабайта, это онлайн установщик

Запускаете adksetup.exe и у вас открывается окно мастера установки комплекта windows adk для windows 10. Вы можете изменить каталог установки, либо вообще просто его скачать, для дальнейшего развертывания. (Скачайте комплект средств для развертывания и оценки Windows 10 для установки на другом компьютере) Я оставляю как есть и буду ставить себе на компьютер.

Говорим нет, так как нет необходимости принимать участие в программе Microsoft.

Соглашаемся с лицензионным соглашением ADK и жмем принять.

Выбираем два компонента:

  • Средства развертывания
  • Среда предустановки Windows PE

Жмем установить. Учтите, что потребуется доступ к интернету и будет скачано, порядка 3,5 гигабайт.

Начнется процесс скачивания ADK.

Все у меня все до качалось, можно теперь поискать ADK у нас в пуске.

Открываем кнопку пуск и находим вот такой пункт Windows kit

  • Диспетчер установки
  • Среда средств развертывания

Следующим шагом у нас с вами будет создание ISO Образа с Windows PE, с помощью которой мы будем загружаться на эталонном компьютере, для снятия образа операционной системы.

Создаем winpe для windows 10

Наша задача с вами создать ISO образ содержащий среду предустановки winPE для десятки, для этого открываем от имени администратора Среду средств развертывания. Для этого щелкаем правым кликом по ярлыку, далее пункт Дополнительно > Запуск от имени администратора.

Так как у меня будущая сборка имеет архитектуру x64, то я ввожу вот такую команду

copype amd64 c:\winpe

где c:\winpe это создаваемая папка на диске С:, а amd64 указание архитектуры

copype x86 c:\winpe

Для 32 битных систем команда выше, там параметр x86. В результате выполнения нужной команды, у вас в папке winpe, будет скопирована вся структура каталогов, необходимая для создания загрузочного ISO с winPE.

Перейдя на диск C: вы увидите в родительской папке вот такие три папки:

  • fwfiles
  • media
  • mount

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

Теперь нам нужно еще до копировать необходимые утилиты в наш winPE, переходим в папку с установленным ADK.

C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools

Выбираете папку с вашей архитектурой, у меня это amd64. Переходите в папку DISM и копируете из нее вот эти два файла:

  • dism.exe
  • imagex.exe

Путь для копирования C:\winpe\media

Начиная с этой лекции, мы разберем вопросы касаемо вспомогательных средств развертывания, а именно:

  1. Среда предустановки Windows PE.
  2. Утилита подготовки образа к копированию – Sysprep.
  3. Утилита, предназначенная для снятия образа – ImageX.

Windows Preinstallation Environment (Windows PE) – это минимальная функциональная версия операционной системы Windows XP, Windows Server 2003 и Windows Vista, с ограниченным набором служб, которая позволяет загружать компьютер без установленной Windows с CD или по сети и используется для подготовки компьютера к установке Windows, копирования образов диска с сетевого файлового сервера и инициации установки Windows . Текущая версия – 3.0.

Среда Windows PE не предназначена для использования в качестве основной операционной системы на компьютере. Она служит в качестве изолированной среды предустановки и является встроенным элементом других средств установки и восстановления системы, например программы установки Windows 7, служб развертывания Windows ( WDS ) и среды восстановления Windows ( Windows RE).

Windows PE – основное средство компании Майкрософт для загрузки компьютеров без работающей операционной системы, это может быть компьютер с поврежденной системой или с полным ее отсутствием. Когда компьютер загружен в среде Windows PE, его можно подготовить к установке Windows и запустить программу установки Windows с сетевого или локального ресурса. Windows PE можно использовать как многофункциональное средство, позволяющее обслуживать существующую копию Windows или восстанавливать данные.

Поскольку среда Windows PE основана на ядре Windows 7, она обладает следующими возможностями:

  • Встроенная поддержка файловой системы NTFS 5.x, включая создание динамических томов и управление ими.
  • Встроенная поддержка сетей TCP/IP и совместного доступа к файлам . Данная возможность осуществима только для клиента, таким образом, на основе среды предустановки невозможно создать полноценный сервер.
  • Встроенная поддержка 32-разрядных (или 64-разрядных) драйверов устройств для Windows, в зависимости от разрядности среды предустановки.
  • Встроенная поддержка подмножества программного интерфейса API.
  • Дополнительная поддержка инструментария WMI , компонента MDAC и HTML-приложений.
  • Возможность запуска с различных типов носителей, включая компакт-диски, DVD-диски, USB-устройства флэш-памяти (UFD) и серверы службы удаленной установки ( WDS ).
  • Поддерживаются автономные сеансы Windows PE.
  • Образы Windows PE могут обслуживаться вне сети.
  • В Windows PE включены все драйверы Hyper-V за исключением драйверов монитора. Это позволяет запускать Windows PE в гипервизоре. В число поддерживаемых возможностей входят поддержка запоминающих устройств, мыши и сетевых адаптеров.

Назначение Windows PE

  • Установка Windows 7 . Windows PE запускается при каждой установке Windows 7. Графические средства, осуществляющие сбор сведений о конфигурации во время установки, выполняются в среде Windows PE. Кроме того, отделы информационных технологий могут настраивать и расширять возможности Windows PE в соответствии с их требованиями к развертыванию систем. Windows PE также поддерживает обслуживание образов Windows. К образу среды предустановки можно добавить различные приложения, позволяющие производить различные действия с компьютером еще до начала установки операционной системы.
  • Устранение неполадок . Windows PE может применяться для устранения неполадок автоматически или вручную. Например, если Windows 7 не запускается в результате повреждения системного файла, среда Windows PE может автоматически запуститься и загрузить среду восстановления Windows (Windows RE). Кроме того, Windows PE можно запустить вручную, чтобы воспользоваться встроенными или пользовательскими средствами диагностики и устранения неполадок. Среда предустановки используется в некоторых средствах сторонних производителей, позволяющих обслуживать испорченные копии операционной системы.
  • Восстановление . С помощью Windows PE изготовители оборудования (OEM) и независимые поставщики программного обеспечения могут создавать настраиваемые, автоматизированные решения для восстановления и перестройки компьютеров с операционной системой Windows 7. Например, пользователи могут запускать свои компьютеры с компакт-диска Windows PE для восстановления системы или из разделов восстановления, чтобы автоматически переформатировать жесткие диски и переустановить операционную систему Windows 7 с исходными драйверами, параметрами и приложениями.

Ограничение Windows PE

Windows PE представляет собой урезанную версия Windows 7 и имеет следующие ограничения.

  • Для минимизации размера среды Windows PE в нее включен только ограниченный набор интерфейсов программирования Win32. В этот набор входят интерфейс ввода-вывода (для дисков и сети) и основные интерфейсы Win32.
  • Так как среда предустановки распространяется бесплатно, чтобы предотвратить пиратское использование среды Windows PE в качестве операционной системы, после 72 часов непрерывного использования работа оболочки автоматически прекращается и происходит перезагрузка. Значение этого периода времени изменить нельзя.
  • Windows PE не может использоваться в качестве файлового сервера или сервера терминалов, так как удаленный рабочий стол не поддерживается.
  • Разрешение имен распределенной файловой системы DFS поддерживается только для изолированных корневых каталогов. Корневые каталоги доменов не поддерживаются. Автономные корни DFS разрешают использование корня DFS, существующего только на локальном компьютере и, следовательно, не использующего Active Directory.
  • Поддерживаются способы подключения к файловым серверам по протоколам TCP/IP и NetBIOS через TCP/IP. Другие методы, например сетевой протокол IPX/SPX, не поддерживаются.
  • Все изменения в реестре Windows PE во время ее выполнения будут потеряны при следующей перезагрузке компьютера. Постоянные изменения в реестр можно внести только в автономном режиме до запуска Windows PE.
  • Буквы дисков присваиваются последовательно, по мере создания разделов в среде Windows PE. Однако при перезагрузке Windows PE все присвоенные буквы дисков возвращаются к порядку по умолчанию.
  • Среда Windows PE не поддерживает оболочку Microsoft .NET или среду CLR.
  • Windows PE не включает подсистемы Windows on Windows 32 (WOW32), Windows on Windows 64 (WOW64), виртуальную машину DOS ( VDM ), OS/2 и POSIX.
  • Среда предварительной установки Windows PE может использоваться для настройки и создания разделов на дисках компьютера до начала установки Windows. Если какие-либо жесткие диски преобразуются в динамические диски с помощью программы Diskpart.exe до запуска программы установки Windows, они затем распознаются как внешние в процессе установки операционной системы и все тома на этих жестких дисках будут недоступны.
  • Windows PE не поддерживает приложения, заархивированные установщиком Windows (файл.MSI).
  • Windows PE не поддерживает 802.1x.
  • Windows PE не поддерживает загрузку из целевого размещения, содержащего символы не английского алфавита.

Зависимости Windows PE

Функционирование Windows PE зависит от ряда технологий Windows .

  • При использовании Windows PE в сети серверы DHCP и DNS могут быть полезны, хотя и не являются обязательными.
  • Для загрузки Windows PE из сети необходим сервер служб развертывания Windows.
  • Для установки Windows необходимо запустить программу установки Windows (Setup.exe для Windows 7 или Winnt32.exe для Windows Server 2003).
  • При автоматизации установки Windows 7 необходимо использовать файл ответов Unattend .xml.

Процесс загрузки Windows PE

  • Выполняется загрузка с использованием загрузочного сектора определенного носителя. Управление передается программе Bootmgr. Bootmgr извлекает основные сведения загрузки из данных конфигурации загрузки и передает управление программе Winload.exe, содержащейся в Boot.wim. Затем Winload.exe загружает необходимый аппаратно-зависимый уровень ( HAL ) и загружает куст системного реестра и необходимые драйверы загрузки. После завершения загрузки она подготавливает среду для выполнения ядра Ntoskrnl.exe. При запуске Windows PE с носителя, доступного только для чтения, например с компакт-диска, среда Windows PE сохраняет кусты реестра в памяти, позволяя приложениям производить запись в реестр. Все изменения, внесенные в реестр приложениями, не сохраняются для использования в других сеансах Windows PE.
  • Выполняется программа Ntoskrnl.exe, которая завершает установку среды. Управление передается модулю Session Manager (SMSS).
  • Модуль SMSS загружает остальную часть реестра, настраивает среду для запуска подсистемы Win32 (файл Win32k.sys) и ее различных процессов. Модуль SMSS загружает процесс Winlogon, чтобы создать сеанс пользователя, а затем запускает службы, остальные второстепенные драйверы устройств и подсистему безопасности (LSASS).
  • Winlogon.exe выполняет установку, основываясь на значении реестра HKLM\SYSTEM\Setup\CmdLine . Winpeshl.exe запустит %SYSTEMDRIVE%\sources\setup.exe , если этот файл существует, в противном случае программа Winpeshl.exe будет искать приложение, указанное в файле %SYSTEMROOT%\system32\winpeshl.ini . Если приложение не указано, будет выполнена команда cmd /k %SYSTEMROOT%\system32\startnet.cmd . По умолчанию Windows PE содержит файл Startnet.cmd, который запускает программу Wpeinit.exe. Wpeinit.exe загружает сетевые ресурсы и координирует свою работу с сетевыми компонентами, такими как DHCP.
  • После выполнения Wpeinit.exe отобразится окно командной строки. Это указывает на завершение процесса загрузки Windows PE.