Создание пользовательской сборки windows pe на ядре windows 7...
DESCRIPTION
Создание пользовательской сборки Windows PE на ядре Windows 7 – часть 1. Львов Никита, MSP. Введение. Недостатки загрузочных дискет MS-DOS Отсутствие поддержки 32 - и 64 - битных приложений(например , вы не сможете запустить утилиты из пакета sysinternals ) - PowerPoint PPT PresentationTRANSCRIPT
Microsoft TechDayshttp://www.techdays.ru
Создание пользовательской сборки Windows PE на ядре Windows7 – часть 1
Львов Никита, MSP
Microsoft TechDayshttp://www.techdays.ru
Введение
Недостатки загрузочных дискет MS-DOS
Отсутствие поддержки 32- и 64-битных приложений(например, вы не сможете запустить утилиты из пакета sysinternals)Отсутствие полного набора системных APIОтсутствие поддержки файловой системы NTFSОтсутствие сетевой поддержкиОтсутствие поддержки современных устройств(USB-устройств, а также многопроцессорных систем)
Microsoft TechDayshttp://www.techdays.ru
Пример
Осуществляется развертывание систем Windows 7 в сети, без WDS
В таком случае необходимо использовать сценарий развертывания по сети с использованием общих ресурсов, в случае недоступности WDS
Microsoft TechDayshttp://www.techdays.ru
Windows PE
Windows PE представляет собой минимальную версию Windows 7. Таким образом, она поддерживает большую часть всех необходимых инструментов и протоколов, необходимых администратору на сегодняшний день
Microsoft TechDayshttp://www.techdays.ru
Преимущества Windows PE
Сетевая поддержкаПоддержка файловой системы NTFSПоддержка x86- и x64-приложенийПочти полный набор средств командной строки из Windows 7Windows PE открыта для редактирования (но без декомпиляции)
Microsoft TechDayshttp://www.techdays.ru
Ограничения Windows PE (1)
Ограниченный набор APIПосле 72 часов непрерывного использования работа оболочки автоматически прекращается и происходит перезагрузкаWindows PE не может использоваться в качестве файлового сервера или сервера терминалов, ограничена в работа с DFSПоддерживаются подключения к файловым серверам только по протоколам TCP/IP и NetBIOS поверх TCP/IPВсе изменения, вносимые в реестр Windows PE во время выполнения Windows PE, теряются при следующей перезагрузке компьютера
Microsoft TechDayshttp://www.techdays.ru
Ограничения Windows PE (2)
Буквы дисков присваиваются последовательно по мере создания разделов в среде Windows PEПри перезагрузке Windows PE все присвоенные буквы дисков возвращаются к порядку по умолчаниюНе поддерживается Microsoft .NET и Common Language Runtime (CLR) Windows PE не включает виртуальные подсистемыWindows PЕ не поддерживает пакеты MSIНе поддерживается протокол 802.1x
Microsoft TechDayshttp://www.techdays.ru
Архитектура Windows PE
Далее речь пойдет о том, как вручную создать собственную сборку Windows PE, содержащую те возможности и компоненты, которые отсутствуют по умолчанию, но наличие которых очень полезно в подобном инструменте
Microsoft TechDayshttp://www.techdays.ru
Загрузка Windows PE
Инициализация загрузчика PBRЗагрузка BOOTMGR, запрос в BCDСоздание виртуального диска (рабочей зоны) и перенос в него всех данных из boot.wimWinload.exeNtoskrnl.exe -> HAL.DLLWinlogon.exe -> Winpeshl.iniCmd.exe -> startnet.cmd
Microsoft TechDayshttp://www.techdays.ru
Ядро
Создание сборки начинается с ядра. Ядро Windows PE содержится в пакете Windows AIK для Windows 7, который можно бесплатно скачать по ссылке:
http://www.microsoft.com/downloads/details.aspx?FamilyID=696dd665-9f76-4177-a811-39c26d3b3b34&DisplayLang=ru
Далее необходимо запустить командную строку средств развертывания и выполнить команду
copype.cmd <архитектура> <путь>
Можно создать сборки для архитектур x86,x64 и Itanium
x86 x86x64 amd64Itanium ia64
Microsoft TechDayshttp://www.techdays.ru
Структура Windows PE
PE 3
.0
ISO
MOUNT
etfsboot.com
winpe.wim
Microsoft TechDayshttp://www.techdays.ru
Алгоритм создания сборкиМонтирование winpe.wim
Присоединение пакетов
Ручное профилирование
Добавление ПО и драйверов, настройка
Отсоединение образа и его оптимизация
Microsoft TechDayshttp://www.techdays.ru
Монтирование winpe.wim
Монтирование winpe.wim с помощью утилиты DISM
Dism /Mount-Wim /WimFile:<путь>\winpe.wim /index:1 /MountDir:<путь >\mount
Microsoft TechDayshttp://www.techdays.ru
Пакеты Windows PE
Пакеты Windows AIK – компоненты, которые используются для расширения функционала Windows PE, например:
создание загрузочных образовподдержка доступа к даннымподдержка средств восстановленияинструментарий WMI
Microsoft TechDayshttp://www.techdays.ru
Добавляемые пакеты
Dism /image:<путь >\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\<архитектура>\WinPE_FPs\<имя пакета>.cab"
Название пакета
Назначение
WinPE-HTA Поддержка HTML-приложений. Позволяет создавать приложения с графическим интерфейсом пользователя, используя обработчик сценариев Internet Explorer и службы HTML
WinPE-PPPoE Включает поддержку протокола PPPoE. Позволяет создавать, подключать, отключать и удалять подключения по протоколу PPPoE из среды предустановки Windows
WinPE-Scripting Поддержка сервера сценариев Windows (WSH). Позволяет производить пакетную обработку файлов с помощью объектов сценариев WSH
WinPE-WDS-Tools Пакет средств служб развертывания Windows. Содержит интерфейсы API, предоставляющие многоадресный сценарий с использованием пользовательского клиента служб развертывания Windows и служебную программу записи образов
Microsoft TechDayshttp://www.techdays.ru
Профилирование
Этапы выполнения профилированияВключение через программу DISMЗапуск сборкиВыполнение требуемых операцийСохранение профиляПодключение сборки с помощью DISMПрименение профиля
Такой метод довольно эффективно снижает размер образа, но его полезно применять в узкой корпоративной среде
Microsoft TechDayshttp://www.techdays.ru
Профилирование
В демонстрации профилирование проводится ВРУЧНУЮ путем удаления всех языковых пакетов, кроме английского и русского Для этого в каталоге Mount\Windows\System32 удаляются все папки с именами языковых пакетов, кроме ru-ru и en-us
Microsoft TechDayshttp://www.techdays.ru
Добавление компонентов из Windows 7
Для расширения функциональности образа можно добавить некоторые программы и компоненты Windows 7
ПроводникNslookupFcDiskcompDiskcopyКлиент RDC
Microsoft TechDayshttp://www.techdays.ru
Список стороннего ПО, добавляемого в Windows PECpu-Z
DnsDataViewEverestFreeCommanderFirefoxPortableHD_SpeedImagexIpToolsMacViewMemTest
mRemote PortableNetAgentPortScannerRecuvaSmartSniferSpaceMongerПакет SysinternalsVictoriaWdsmcastWIM2VHDWinRARmount\Program Files\soft\
Microsoft TechDayshttp://www.techdays.ru
Редактирование реестра Windows PE
Редактирование реестра Windows PE выполняется через стандартную программу regedit.exe, путем вызова команды «Загрузить куст»
Microsoft TechDayshttp://www.techdays.ru
Настройка Windows PE
Windows PE может быть настроена для удобства администратора
Изменить путь к рабочей зонеИзменить размер рабочей зоныНастроить автоматически выполняемый командный сценарий…
Microsoft TechDayshttp://www.techdays.ru
Winpeshl.ini
Предназначен для настройки программы- оболочкиПо умолчанию не существует
В качестве оболочки используется cmd.exe
Выход из оболочки влечет за собой автоматическую перезагрузку компьютераСинтаксис:
[LaunchApp]AppPath = %SYSTEMDRIVE%\myshell.exe[LaunchApps] %SYSTEMDRIVE%\mydir\application1.exe, {option}
Microsoft TechDayshttp://www.techdays.ru
Startnet.cmd
Командный сценарий, предназначенный для запуска приложений после загрузки средыХранится в каталоге \windows\system32Синтаксис стандартный для сценариев командной строки (*.cmd)
Microsoft TechDayshttp://www.techdays.ru
Добавление драйверов
Чтобы добавить в сборку драйвер в более удобном графическом режиме, необходимо воспользоваться Windows Deployment Services
Microsoft TechDayshttp://www.techdays.ru
Настройка с помощью DISM
С помощью утилиты DISM можно изменить некоторые настройки Windows PE
Установка пути к рабочей зоне (по умолчанию X)
DISM /image:<путь>\mount /Set-TargetPath:Z:\
Установка размера рабочей зоны (по умолчанию 32 Мб)
DISM /image:<путь>\mount /Set-ScratchSpace:64
Microsoft TechDayshttp://www.techdays.ru
Другие команды DISM
Отобразить включенные в образ пакеты
Dism /image:<путь>\mount /Get-Packages
Отобразить язык по умолчанию для смонтированного образа
Dism /image:<путь>\mount /Get-Intl
Добавить в образ драйверDism /image:<путь >\mount /Add-Driver /driver:<путь к драйверу>
Microsoft TechDayshttp://www.techdays.ru
Размонтирование и оптимизация образа
По окончании редактирования образа его необходимо размонтировать с подтверждением изменений
DISM /Unmount-Wim /MountDir:<путь>\mount /Commit
и оптимизироватьimagex /export <путь>\winpe.wim 1 <путь>\ISO\sorces\boot.wim «Windows PE 3.0»
Microsoft TechDayshttp://www.techdays.ru
Важно!
При создании х86-версии Windows PE размер образа не должен превышать 4 ГбПеред добавлением любого стороннего ПО в Windows PE его необходимо протестировать на совместимость
Microsoft TechDayshttp://www.techdays.ru
Настройка универсальной сборки
Windows PE
Львов Никита, MSP
Демонстрация
Microsoft TechDayshttp://www.techdays.ru
Что делать с настроенным winpe.wim?
Вы можете:1. Создать загрузочный CD\DVD диск2. Создать загрузочный флэш-
накопитель3. Использовать WDS для удаленной
загрузки систем4. Поместить напрямую на жесткий
диск
Microsoft TechDayshttp://www.techdays.ru
Создание загрузочного CD\DVD диска
Для этого существует командаOscdimg –n –b<путь>\etfsboot.com <путь>ISO <путь к конечному ISO-образу>
Microsoft TechDayshttp://www.techdays.ru
Создание загрузочного флэш-накопителя
Подключить флэш-накопительОтформатировать его в файловой системе NTFS, создать один раздел, пометить его как активныйСкопировать все содержимое папки ISO на флэш-накопительВ командной строке перейти в каталог boot на флэш-накопителеBootsect /nt60 <имя флэш-накопителя>
Microsoft TechDayshttp://www.techdays.ru
Использование WDS
В консоли управления WDS необходимо добавить настроенный образ boot.wim как загрузочный в хранилище образов.Дополнительные действия не требуются.Клиентские компьютеры загружаются с него как и при установке ОС
Microsoft TechDayshttp://www.techdays.ru
Помещение на жесткий диск ПК
Загрузить целевой компьютер с носителя Windows PE, указанного вышеПри помощи инструмента ImageX применить образ boot.wim к жесткому диску целевого ПКd:\imagex /apply d:\sources\boot.wim 1 c:xcopy d:\boot\*.* /e /f c:\boot\copy d:\bootmgr c:del C:\boot\bcd
Microsoft TechDayshttp://www.techdays.ru
Bcdedit -createstore c:\boot\BCD Bcdedit -store c:\boot\BCD -create {bootmgr} /d “Boot Manager” Bcdedit -store c:\boot\BCD -set {bootmgr} device boot Bcdedit -store c:\boot\BCD -create /d “WINPE” -application osloaderбудет выведен GUID. Его следует скопировать в буфер обмена для последующей вставки в команды вместо <GUID>
Microsoft TechDayshttp://www.techdays.ru
Bcdedit -store c:\boot\BCD -set <GUID> osdevice boot Bcdedit -store c:\boot\BCD -set <GUID> device boot Bcdedit -store c:\boot\BCD -set <GUID> path \windows\system32\boot\winload.exe Bcdedit -store c:\boot\BCD -set <GUID> systemroot \windows Bcdedit -store c:\boot\BCD -set <GUID> winpe yes Bcdedit -store c:\boot\BCD -displayorder <GUID> -addlastПерезагрузть ПК
Microsoft TechDayshttp://www.techdays.ru
Помещение Windows PE в различные среды для
последующего использования
Львов Никита, MSP
Демонстрация
Microsoft TechDayshttp://www.techdays.ru
Ресурсы
http://www.microsoft.com/rus/servers/home.mspx - страница Servers & Tools
http://technet.microsoft.com/ru-ru/windows/dd361746 - развертывание Windows 7
http://technet.microsoft.com/ru-ru/deployment/default.aspx - технический центр развёртывания
Руководство пользователя по пакету Windows AIK