Перед вами набор совершенно неоформленных заметок на тему автоматизированного распространения Windows по сети.
На самом деле мне не не нужно было бы в таком виде их публиковать, но хочется, чтобы они не пропали. Беспорядочность изложения объясняется и извиняется тем, что заметки сделаны для собственного употребления.
Речь пойдет о Windows XP/Vista/7.
Инструменты: WAIK и WDS.
Кроме них существуют MDT и SCCM, но о них не здесь.
Главное преимущество способа по сравнению с конкурентами - его бесплатность. Интересно, что можно комбинировать элементы фирменного подхода и платных вариантов.
Нужно заметить, что по предварительному впечатлению процесс нетривиальный. Существует много компонентов, которые делают разные вещи. Некоторые из компонентов пересекаются по функциям и это затрудняет их понимание.
Предварительный результат - система работает, но есть проблемы с драйверами. Все четко работает только на виртуальных машинах Microsoft. Это и понятно - виртуальные машины производства фирмы Мелкософт, драйверы стандартные и проблем с ними принципиально не возникает. В случае физических компьютеров существуют проблемы PXE загрузки по сети образа операционной системы. Могут быть проблемы с определением диска, хотя и реже.
Да, eсть способы наполнения boot-имиджа драйверами, но процесс довольно трудоемкий и неудобный даже для создания имиджа к определенному типу железа. Что уж говорить о создании универсального образа. По этой причине я собираюсь протестировать альтернативные варианты (Symantec, Acronis), а также возможность их сочетания с классическим Мелкософтовским.
Итак, к делу!
=======================
Маунтим образ нужного Windows к папке mount при помощи imagex или Dism.
Добавляем драйвер командой
Dism /image:\winpe\mount /add-driver:"PATH"
Path должен указывать "внутрь" фолдера с драйверами, содержащего файлы .inf и .sys.
Добавляем setup packages:
Winpe-setup.cab
Winpe-setup-client.cab
Создаем файл winpeshl.ini
Переносим с оригинального диска файл Lang.ini во избежание ошибки.
Для создания ISO-образа воспользуемся командой oscdimg---.
В случае создания загрузочного USB диска этот этап пропускается.
Boot-Image Win7 32-bit - определяет как клиентские, так и серверные системы. Возможно, серверные из-за своей новизны, а клиентские из-за 32-битовости. Хотя есть инфа, что серверные boot-images дают больше возможностей. Стоит попробовать образ Server 2008 не R2.
Проверяем Answer file, создаваемый программой sysprep.
Vista boot image setup не реагирует на мышку, а Win7 - таки да.
Итак, лучший boot-image - Win7 discovery!
Boot Setup 7 дал ошибку при работе с Vista install image, но, возможно, проблема... OK, проблема таки в испорченном имидже, или же в том, что он не прошел sysprep.
Unattended file assigned from image properties is not work. Попробовать создать его из Vista при помощи Vista WAIK и не забыть применить его к Vista image из Vista boot image.
Стоит добавить domain user в файл wdsclientunattend.xml для успешного присоединения пользователя к домену.
Во время установки можно открыть лог-файлы setupacc.txt и setuperr.txt из папки X:\Windows\Panther. Для этого нажимаем SHIFT+F10 и получаем cmd.
SHIFT+CTRL+F3 - включение режима oobe во время установки Windows. Делается при появлении запроса ввести user name и password.
Обновить WAIK до SP1.
Как создать и распространить XP image при помощи WDS.
Сначала захватываем образ XP (на виртуальной машине это заняло у меня 7 минут).
После внедрения образа в WDS и проверки его успешного распространения, делаем sysprep XP и захватываем образ снова.
Теперь он пригоден не только в качестве бэкапа определенного компьютера, его можно "сажать" на любое железо, что и требовалось доказать.
Команда захвата образа XP:
Imagex /capture C: c:\MyXpImages "XP_SP2_backup_virtual"
Imagex - команда, умеющая захватывать, маунтить и применять образы.
/capture - параметр, указывающий на необходимость захвата образа.
C: - имя захватываемого логического диска.
c:\MyXpImages - название файла образа, создаваемого после захвата.
"XP_SP2..." - вы удивитесь, но в одном файле могут существовать несколько образов и каждый со своим названием.
Deployment - вопросы.
Как грамотно создать файл ответов для Vista/7?
Как присоединить файл ответов к имиджу?
Как можно использовать capture/discover/install images для создания загрузочного диска или ISO имиджа?
Как BOOT.WIM преобразуется в CD?
Сделать сейчас:
Переписать образ XP
Присоединить его к WDS.
Поднять с него виртуальный компьютер (с какого имиджа будет загрузка).
Затем, при помощи виртуальной Vista с установленным WAIK 6, создать файл ответов и поднять с ним XP.
Разобраться в разных типах имиджей - capture, install и discover, провести опыты. Разобраться с gImageX.
По ощущению, discover и boot имиджи не отличаются. Boot используется для сетевой загрузки. По идее discover используется для создания реального загрузочного CD в случаях, когда функция PXE не работает. Если вспомнить, WinPE не загружает setup или minisetup, а используется для ImageX.
Разобраться с SIM.
Что такое режим аудита?
Очень рекомендуется использовать BOOT.WIM от Server 2008 DVD, т.к. он дает возможность использовать полную функциональность WDS.
В дальнейшем нужно разобраться с добавлением драйверов и программ в имидж.
DISM - Deployment Image Servicing and Management tool
C:\winpe_x86>dism.exe /?
DISM.exe [dism_options] {WIM_command} []
DISM.exe {/Image: | /Online} [dism_options]
{servicing_command} []
DESCRIPTION:
DISM enumerates, installs, uninstalls, configures, and updates features
and packages in Windows images. The commands that are available depend
on the image being serviced and whether the image is offline or running.
IMAGE SPECIFICATIONS:
/Online - Targets the running operating system.
/Image - Specifies the path to the root directory of an
offline Windows image.
DISM OPTIONS:
/English - Displays command line output in English.
/Format - Specifies the report output format.
/WinDir - Specifies the path to the Windows directory.
/SysDriveDir - Specifies the path to the system-loader file named
BootMgr.
/LogPath - Specifies the logfile path.
/LogLevel - Specifies the output level shown in the log (1-4).
/NoRestart - Suppresses automatic reboots and reboot prompts.
/Quiet - Suppresses all output except for error messages.
/ScratchDir - Specifies the path to a scratch directory.
For more information about these DISM options and their arguments, specify an
option immediately before /?.
Examples:
DISM.exe /Mount-Wim /?
DISM.exe /ScratchDir /?
DISM.exe /Image:C:\test\offline /?
DISM.exe /Online /?
Создание загрузочного носителя
Copype x86 C:\WinPE_x86
Copy x:\xxx.wim C:\WinPE_x86\ISO\sources\boot.wim
(setup, capture, discovery).
Oscdimg -bc:\WinPE_x86\etfsboot.com C:\WinPE_x86\ISO C:\WinPE_x86\Image.iso
Эти команды можно ввести в batch-файл. Но при одном условии - запускать файл можно будет из "Deployment Tools Command Prompt" командой call. Например, если batch-файл называется MakeISO.bat, то команда его запуска будет выглядеть так: call MakeISO.bat.
Можно сделать экспорт разных WIM boot-образов в некоторую папку и затем массовое создание загрузочных ISO-файлов.
Создание WinPE.ISO,
создание файла ответов,
sysprep,
capture,
Изменения и добавки,
deploy (apply) image individually or with WDS включая файл ответов.
Я не нашел одной определенной статьи или учебника, которые бы кратко и понятно показали всю картину Windows Deployment, объяснили, какие шаги нужно сделать и для чего предназначена каждая утилита, а также пошагово и с иллюстрациями показали все этапы большого пути, учитывая всевозможные проблемы и подводные камни. Пришлось взяться за это самому, собрав информацию из разных источников и опробовав все на практике. Наш завет: правду, одну только правду и ничего, кроме правды.
Windows Deployment:
WDS - осуществляет реальный deployment.
WDS устанавливается на серверных системах Window Server 2008/R2.
WAIK - custom installation, image capturing and applying.
WAIK существует для операционных систем, начиная с Vista.
В случае, когда не нужно изменять оригинальный образ, можно воспользоваться готовыми WIM образами с диска Vista или Win7 и распространять их при помощи WDS. Это довольно несложная операция.
Если же нужно создать образ определенной конфигурации с заранее установленными программами, то после инсталляции и настройки Windows нужно будет воспользоваться набором инструментов WAIK. WAIK умеет снимать образы с готовых систем и применять их к новым. Это аналогично тому, что делают программы Ghost, Acronis, Paragon. Основной инструмент, ответственный за снятие и применение образов - ImageX. Кроме того, при помощи WAIK можно создать файл ответов с различными настройками, например, с указанием Product Key. В дополнение к этому WAIK способен внедрять хот-фиксы, драйверы и программы в качестве пост-инсталляционных задач. Т.е., если нужно иметь компьютер с установленным Office, это можно сделать одним из двух способов: инсталлировать Office и затем снять образ или создать пост-инсталляционную задачу.
Не все, что было сказано в отношении образов, относится к WinXP, т.к. на оригинальном диске он существует не как образ, а в виде набора файлов. При желании сделать автоматизированный deployment XP, нужно его сначала проинсталлировать на компьютер, а затем захватить образ. Получившийся образ уже пригоден для централизованного распространения при помощи WDS.
На дисках Vista и Win7 кроме образа INSTALL.WIM существует образ BOOT.WIM, необходимый для загрузки инсталляционного окружения. Его можно использовать как для загрузки по сети, так и для создания загрузочного диска WindowsPE. В обоих случаях результат одинаков. Интересно, что на практике можно смешивать разные загрузочный и инсталляционный образы. Т.е., при помощи загрузочного образа Vista можно установить как Vista, так и Win7 или же наоборот.
WindowsPE используется тогда, когда сетевая карта компьютера не поддерживает стандарт PXE, необходимый для загрузки по сети.
Кроме того WindowsPE можно использовать для решения компьютерных проблем, в частности, когда компьютер не способен загрузиться самостоятельно.
Интересная возможность - подготовка к захвату образа при помощи виртуального компьютера. Во-первых экономится компьютер, во-вторых упрощается установка драйверов (их роль выполняют integration services в Hyper-V), в-третьих перезагрузки проходят быстрее, в-четвертых все операции можно производить удаленно.
Единственное но, перед захватом образа с подготовленного компьютера нужно не забыть удалить Integration Services.
=Понятия=
WDS (Windows Deployment Services) - server role for deployment Windows WIM images.
WAIK (Windows Automated Installation Kit) - application for image modifying and creating answer files with Windows SIM
Windows SIM (Windows System Image Manager) - tool for creating answer file.
Answer file - file with answers for installation questions, for example - Product key.
Если возникает ошибка при попытке создания файла каталога, можно воспользоваться файлом с инсталляционного диска.
WinPE - bootable disk with ImageX and other tools.
ImageX - capture (create image), mount/unmount drives, commit and apply (restore image). It is main part of WAIK and run typically from WinPE.
Dism - Инструмент для работы с образом.
Capture image - загрузочный образ, модифицированный для загрузки утилиты захвата, вместо setup. Результат работы утилиты - install image, который можно добавить в WDS.
Discover image - загрузочный образ, использующийся для начала установки.
Sysprep - clear hardware dependinces and SID.
BDD (Business Desktop Deployment).
MDOP (Microsoft Desktop Optimisation Pack).
Если взять нетронутый образ с оригинального диска Windows Vista или 7 и вставить в WDS, то в результате мы получим обычную установку Windows с той лишь разницей, что она будет происходить по сети. Что это дает? Во-первых, не нужно вскрывать компьютер или подсоединенять к нему внешние жесткие диски и cd/dvd. Соответственно, не нужно заботиться об их наличии. Во-вторых, поскольку процесс уже налажен, легко будет в дальнейшем заменить оригинальные образы другими, предварительно сконфигурированными, с файлами ответов, драйверами, программами и т.д. Можно даже будет держать образы, не прошедшие sysprep и специфичные для определенных типов железа, возможно, с различным набором программ. Т.е., то для чего часто используют Ghost, Acronis, Paragon и т.д.
=Make WinPE=
1. Copy x86 C:\WinPE_x86
Copype amd64 C:\winpe_x64
2 . Copy "C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE.WIM C:\MyWinPE\ISO\sources\Boot.WIM
3. Copy "C:\Program Files\Windows AIK\Tools\x86\ImageX C:\MyWinPE\ISO\
4. ImageX /mountrw C:\c-drive.wim 1 C:\mounted-images\
dism /Mount-WIM /WimFile:C:\winpe_x86\ISO\sources\boot.wim /index:1 /MountDir:c:\winpe_x86\mount
5. oscdimg -n -bC:\MyWinPE\etfsboot.com C:\MyWinPE\ISO\ C:\MyWinPE.ISO
=Create answer file=
Это делается при помощи Windows SIM
=Syspreping OS=
For Vista/7
C:\Windows\System32\sysprep\sysprep.exe /oobe /generalize /unattend:sysprep.xml
(for Windows XP take sysprep from original CD, Deploy.cab file).
If after syspreping and rebooting you come with error "The system registry contains invali file paths." it's what you have to do:
1. Before syspreping export Mounted Devices key from a registry (HKLM\SYSTEM\MountedDevices) and don't close it!
2. Open a cmd prompt and run sysprep -oobe -generalize -quit
Seems that Sysprep delete this registry key. In my opinion this is a bug.
3. Then import to registry the saved Mounted Devices key.
4. Shutdown computer and Boot it with WinPE.
5. Capture disk image with ImageX (or Ghost).
=Capture image=
E:\ImageX /capture D: D:\MyImages.WIM "MyVista86image"
Будьте внимательны и дважды проверьте, какой логический диск вы захватываете и куда. Захват нужно осуществлять с логического диска, на котором находится программа ImageX.
Как вы, наверное, заметили целевым местом, на которое можно класть образ, может быть источник, то-есть тот логический диск, с которого образ снимается.
Бывает трудно понять, сколько логических дисков существует и какие у них буквы. Есть хороший совет, найденный на просторах Интернета. Если нужно узнать, какие логические диски существуют и какие у них буквы, можно открыть программу Notepad и использовать ее диалог Save as или Open вместо Windows Explorer.
=Mounting image=
ImageX /mountrw C:\c-drive.wim 1 C:\mounted-images\
dism /Mount-WIM /WimFile:C:\winpe_x86\ISO\sources\boot.wim /index:1 /MountDir:c:\winpe_x86\mount
=Make ISO=
=Apply (Deploy)=
ImageX /apply D:\MyImages.WIM 1 C:\
P.S.
Take in mind that WAIK-7 is not supporting WinXP, for working with XP you have to deal with WAIK-Vista.
P.S.2
If after syspreping and rebooting you come with error "The system registry contains invali file paths." it's what you have to do:
1. Before syspreping export Mounted Devices key from a registry (HKLM\SYSTEM\MountedDevices) and don't close it!
2. Open a cmd prompt and run sysprep -oobe -generalize -quit
Seems that Sysprep make deleting
3. Then import to registry the saved Mounted Devices key.
4. Shutdown computer and Boot it with WinPE.
5. Capture disk image with ImageX (or Ghost).
сделать Sysprep:
На висте: C:\windows\system32\sysprep\sysprep.exe /oobe /generalize /shutdown (/quit)
на XP: sysprep -mini -reseal
Далее делается capturing при помощи диска WindowsPE или Capture image по сети и ImageX, который в них содержится.
GUI для imagex = gImageX
При загрузке обычно нужно нажимать F12.
Если используется загрузочный образ Server 2008, то в меню выбора OS можно будет увидеть только серверные системы. Возможно дело том, что он 64-битовый, а не в том, что он серверный. Это нужно будет проверить.
Лучшая информация об Answer file была найдена в книге Майнази о Windows Server 2008 R2.
Для эксперимента была выбрана виртуальная машина с 1-м процессором, находящаяся на сервере Hyper-V. Намеренно был взят образ реального компьютера Lenovo с целью убедиться, что различная аппаратная платформа не приводит к проблемам.
== Creating PE3 Bootable USB device. ==
I’ve used Windows PE for a long time. And I’ve grown to love it. It’s an extremely useful tool, not just for OS installation, but for diagnostics.
Since there’s a version of WinPe for x64 & x86 (& itanium) I like to keep both x64 & x86 on my USB stick. Essentially copying the each version to the root of the USB stick as needed. Meaning at any one time I have three copies of WinPE on my USB stick. Other applications I copy directly to my USB stick, so that I don’t have to remount the image every time i need another application added.
Shortly after Windows 7 was released came a new version of WinPE, WinPE 3.0 on the Windows Automated Installation Kit.
Preparing the USB stick.
You’ll need to prepare the USB stick. To do this open a command prompt using Run As Administrator and use the following commands.
diskpart
list disk
select disk 1
clean
create partition primary
select partition 1
active
format quick fs=fat32
assign
exit
exit
Make sure you select the correct disk by adjusting the third command above.
Getting WinPE 3.0 Quickly
I’ve already done this so I’ve uploaded it to save you some time. The new Windows AIK is 1.75Gb my files are 170Mb & 146Mb for x64 & x86 respectively. I’ve detailed the packages I’ve used below.
Download WinPE 3 x86 Architecture [146Mb]
Download WinPE 3 x64 Architecture [170Mb]
Files are hosted with HotFile as I don’t have enough storage to host them myself.
Both x86 & x64 versions are available.
WMI, HTA & Scripting Packages
ImageX copied to the image (System32 folder).
Once you’ve downloaded the file above, you can either copy the contents of the version of WinPE you wish to use to the root of the USB stick.
Creating a WinPE 3 Image
To create your own customised WinPE 3 image, you can follow Microsoft’s instructions here. The page details all the packages you can install and how to install them. The commands I used for each version are below.
Remember to run the Deployment tools Command Prompt As Administrator.
32-Bit WinPE 3
copype.cmd x86 c:\winpe_x86
copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim
Dism /Mount-Wim /WimFile:C:\winpe_x86\ISO\sources\boot.wim /index:1 /MountDir:C:\winpe_x86\mount
Dism /image:C:\winpe_x86\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\winpe-wmi.cab"
Dism /image:C:\winpe_x86\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\winpe-hta.cab"
Dism /image:C:\winpe_x86\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\winpe-scripting.cab"
copy "C:\Program Files\Windows AIK\Tools\x86\imagex.exe" C:\winpe_x86\mount\Windows\System32\imagex.exe
Dism /unmount-Wim /MountDir:C:\winpe_x86\mount /Commit
64-Bit WinPE 3
copype.cmd amd64 c:\winpe_amd64
copy c:\winpe_amd64\winpe.wim c:\winpe_amd64\ISO\sources\boot.wim
Dism /Mount-Wim /WimFile:C:\winpe_amd64\ISO\sources\boot.wim /index:1 /MountDir:C:\winpe_amd64\mount
Dism /image:C:\winpe_amd64\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\amd64\WinPE_FPs\winpe-wmi.cab"
Dism /image:C:\winpe_amd64\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\amd64\WinPE_FPs\winpe-hta.cab"
Dism /image:C:\winpe_amd64\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\amd64\WinPE_FPs\winpe-scripting.cab"
copy "C:\Program Files\Windows AIK\Tools\amd64\imagex.exe" C:\winpe_amd64\mount\Windows\System32\imagex.exe
Dism /unmount-Wim /MountDir:C:\winpe_amd64\mount /Commit
Once you’ve followed all the instructions you can copy the contents of c:\\ISO\ to the root of the usb stick you are using.
6 comments:
Ryan said...
While your script uses DISM to install the language neutral packages, it fails to install the language specific packages. For example, on a 32-bit platform (for users in the US), you could find language specific packages in "C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\en-us".
6 November 2009 09:47
www.daiowen.co.uk
== WinPE 3.0 ==
http://4sysops.com/archives/build-a-bootable-windows-pe-3-0-usb-drive-with-rescue-tools-part-1/
For Windows PE 1.0, the minimalist Windows based on Windows 2003/XP, you needed an SA (Software Assurance), OEM, or ISV license. When Windows Vista was released everyone had access to Windows PE 2.0. This also applies to the Windows 7-based edition, Windows PE 3.0. Windows PE (Preinstallation Environment) was originally designed to deploy Windows. However, it is also useful in creating your own customized rescue boot media. In this article, I will describe how you can create a bootable Windows PE 3.0 (WinPE) USB stick, and, in my next post, I will show how to add your own rescue tools and how to keep your rescue stick up-to-date without much hassle. You will see that the procedure described here is much more convenient than most solutions you’ll find on the web.
1. Create a bootable USB drive
Before you get started, you have to make your flash drive bootable. I have already described this procedure in my post about the Windows 7 USB/DVD Download Tool. For your convenience here is the command sequence, which you should run on a command prompt with admin rights:
diskpart list disk select disk # clean create partition primary select partition 1 active format quick fs=fat32 assign exit
Replace ‘#’ with the drive number of your USB drive. Be careful because this procedure will erase the whole drive!
2. Copy the WinPE 3.0 files to the USB drive
WinPE 3.0 is part of the Windows Automated Installation Kit (WAIK) for Windows 7, which you can download here. Once you have installed the WAIK, you’ll find a folder of the Windows AIK on the Windows Start Menu. Launch the Deployment Tools Command Prompt and enter this command:
copype.cmd x86 c:\winpe_x86
Then, copy winpe.wim to the correct folder:
copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim
Now, copy WinPE to your USB drive:
xcopy C:\winpe_x86\iso\*.* /e G:\
In this example, ‘G:’ is the drive letter of your flash drive.
Now you should be able to boot from your WinPE 3.0 USB drive. In my next post, I will outline the interesting part—that is, how to prepare your USB drive so that you can add new tools without starting again from scratch.
WinPE 3.0
http://4sysops.com/archives/build-a-bootable-windows-pe-3-0-usb-drive-with-rescue-tools-part-1/
For Windows PE 1.0, the minimalist Windows based on Windows 2003/XP, you needed an SA (Software Assurance), OEM, or ISV license. When Windows Vista was released everyone had access to Windows PE 2.0. This also applies to the Windows 7-based edition, Windows PE 3.0. Windows PE (Preinstallation Environment) was originally designed to deploy Windows. However, it is also useful in creating your own customized rescue boot media. In this article, I will describe how you can create a bootable Windows PE 3.0 (WinPE) USB stick, and, in my next post, I will show how to add your own rescue tools and how to keep your rescue stick up-to-date without much hassle. You will see that the procedure described here is much more convenient than most solutions you’ll find on the web.
1. Create a bootable USB drive
Before you get started, you have to make your flash drive bootable. I have already described this procedure in my post about the Windows 7 USB/DVD Download Tool. For your convenience here is the command sequence, which you should run on a command prompt with admin rights:
diskpart list disk select disk # clean create partition primary select partition 1 active format quick fs=fat32 assign exit
Replace ‘#’ with the drive number of your USB drive. Be careful because this procedure will erase the whole drive!
2. Copy the WinPE 3.0 files to the USB drive
WinPE 3.0 is part of the Windows Automated Installation Kit (WAIK) for Windows 7, which you can download here. Once you have installed the WAIK, you’ll find a folder of the Windows AIK on the Windows Start Menu. Launch the Deployment Tools Command Prompt and enter this command:
copype.cmd x86 c:\winpe_x86
Then, copy winpe.wim to the correct folder:
copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim
Now, copy WinPE to your USB drive:
xcopy C:\winpe_x86\iso\*.* /e G:\
In this example, ‘G:’ is the drive letter of your flash drive.
Now you should be able to boot from your WinPE 3.0 USB drive. In my next post, I will outline the interesting part—that is, how to prepare your USB drive so that you can add new tools without starting again from scratch.
- Posted using BlogPress from my iPad
На самом деле мне не не нужно было бы в таком виде их публиковать, но хочется, чтобы они не пропали. Беспорядочность изложения объясняется и извиняется тем, что заметки сделаны для собственного употребления.
Речь пойдет о Windows XP/Vista/7.
Инструменты: WAIK и WDS.
Кроме них существуют MDT и SCCM, но о них не здесь.
Главное преимущество способа по сравнению с конкурентами - его бесплатность. Интересно, что можно комбинировать элементы фирменного подхода и платных вариантов.
Нужно заметить, что по предварительному впечатлению процесс нетривиальный. Существует много компонентов, которые делают разные вещи. Некоторые из компонентов пересекаются по функциям и это затрудняет их понимание.
Предварительный результат - система работает, но есть проблемы с драйверами. Все четко работает только на виртуальных машинах Microsoft. Это и понятно - виртуальные машины производства фирмы Мелкософт, драйверы стандартные и проблем с ними принципиально не возникает. В случае физических компьютеров существуют проблемы PXE загрузки по сети образа операционной системы. Могут быть проблемы с определением диска, хотя и реже.
Да, eсть способы наполнения boot-имиджа драйверами, но процесс довольно трудоемкий и неудобный даже для создания имиджа к определенному типу железа. Что уж говорить о создании универсального образа. По этой причине я собираюсь протестировать альтернативные варианты (Symantec, Acronis), а также возможность их сочетания с классическим Мелкософтовским.
Итак, к делу!
=======================
Маунтим образ нужного Windows к папке mount при помощи imagex или Dism.
Добавляем драйвер командой
Dism /image:\winpe\mount /add-driver:"PATH"
Path должен указывать "внутрь" фолдера с драйверами, содержащего файлы .inf и .sys.
Добавляем setup packages:
Winpe-setup.cab
Winpe-setup-client.cab
Создаем файл winpeshl.ini
Переносим с оригинального диска файл Lang.ini во избежание ошибки.
Для создания ISO-образа воспользуемся командой oscdimg---.
В случае создания загрузочного USB диска этот этап пропускается.
Boot-Image Win7 32-bit - определяет как клиентские, так и серверные системы. Возможно, серверные из-за своей новизны, а клиентские из-за 32-битовости. Хотя есть инфа, что серверные boot-images дают больше возможностей. Стоит попробовать образ Server 2008 не R2.
Проверяем Answer file, создаваемый программой sysprep.
Vista boot image setup не реагирует на мышку, а Win7 - таки да.
Итак, лучший boot-image - Win7 discovery!
Boot Setup 7 дал ошибку при работе с Vista install image, но, возможно, проблема... OK, проблема таки в испорченном имидже, или же в том, что он не прошел sysprep.
Unattended file assigned from image properties is not work. Попробовать создать его из Vista при помощи Vista WAIK и не забыть применить его к Vista image из Vista boot image.
Стоит добавить domain user в файл wdsclientunattend.xml для успешного присоединения пользователя к домену.
Во время установки можно открыть лог-файлы setupacc.txt и setuperr.txt из папки X:\Windows\Panther. Для этого нажимаем SHIFT+F10 и получаем cmd.
SHIFT+CTRL+F3 - включение режима oobe во время установки Windows. Делается при появлении запроса ввести user name и password.
Обновить WAIK до SP1.
Как создать и распространить XP image при помощи WDS.
Сначала захватываем образ XP (на виртуальной машине это заняло у меня 7 минут).
После внедрения образа в WDS и проверки его успешного распространения, делаем sysprep XP и захватываем образ снова.
Теперь он пригоден не только в качестве бэкапа определенного компьютера, его можно "сажать" на любое железо, что и требовалось доказать.
Команда захвата образа XP:
Imagex /capture C: c:\MyXpImages "XP_SP2_backup_virtual"
Imagex - команда, умеющая захватывать, маунтить и применять образы.
/capture - параметр, указывающий на необходимость захвата образа.
C: - имя захватываемого логического диска.
c:\MyXpImages - название файла образа, создаваемого после захвата.
"XP_SP2..." - вы удивитесь, но в одном файле могут существовать несколько образов и каждый со своим названием.
Deployment - вопросы.
Как грамотно создать файл ответов для Vista/7?
Как присоединить файл ответов к имиджу?
Как можно использовать capture/discover/install images для создания загрузочного диска или ISO имиджа?
Как BOOT.WIM преобразуется в CD?
Сделать сейчас:
Переписать образ XP
Присоединить его к WDS.
Поднять с него виртуальный компьютер (с какого имиджа будет загрузка).
Затем, при помощи виртуальной Vista с установленным WAIK 6, создать файл ответов и поднять с ним XP.
Разобраться в разных типах имиджей - capture, install и discover, провести опыты. Разобраться с gImageX.
По ощущению, discover и boot имиджи не отличаются. Boot используется для сетевой загрузки. По идее discover используется для создания реального загрузочного CD в случаях, когда функция PXE не работает. Если вспомнить, WinPE не загружает setup или minisetup, а используется для ImageX.
Разобраться с SIM.
Что такое режим аудита?
Очень рекомендуется использовать BOOT.WIM от Server 2008 DVD, т.к. он дает возможность использовать полную функциональность WDS.
В дальнейшем нужно разобраться с добавлением драйверов и программ в имидж.
DISM - Deployment Image Servicing and Management tool
C:\winpe_x86>dism.exe /?
DISM.exe [dism_options] {WIM_command} []
DISM.exe {/Image: | /Online} [dism_options]
{servicing_command} []
DESCRIPTION:
DISM enumerates, installs, uninstalls, configures, and updates features
and packages in Windows images. The commands that are available depend
on the image being serviced and whether the image is offline or running.
IMAGE SPECIFICATIONS:
/Online - Targets the running operating system.
/Image - Specifies the path to the root directory of an
offline Windows image.
DISM OPTIONS:
/English - Displays command line output in English.
/Format - Specifies the report output format.
/WinDir - Specifies the path to the Windows directory.
/SysDriveDir - Specifies the path to the system-loader file named
BootMgr.
/LogPath - Specifies the logfile path.
/LogLevel - Specifies the output level shown in the log (1-4).
/NoRestart - Suppresses automatic reboots and reboot prompts.
/Quiet - Suppresses all output except for error messages.
/ScratchDir - Specifies the path to a scratch directory.
For more information about these DISM options and their arguments, specify an
option immediately before /?.
Examples:
DISM.exe /Mount-Wim /?
DISM.exe /ScratchDir /?
DISM.exe /Image:C:\test\offline /?
DISM.exe /Online /?
Создание загрузочного носителя
Copype x86 C:\WinPE_x86
Copy x:\xxx.wim C:\WinPE_x86\ISO\sources\boot.wim
(setup, capture, discovery).
Oscdimg -bc:\WinPE_x86\etfsboot.com C:\WinPE_x86\ISO C:\WinPE_x86\Image.iso
Эти команды можно ввести в batch-файл. Но при одном условии - запускать файл можно будет из "Deployment Tools Command Prompt" командой call. Например, если batch-файл называется MakeISO.bat, то команда его запуска будет выглядеть так: call MakeISO.bat.
Можно сделать экспорт разных WIM boot-образов в некоторую папку и затем массовое создание загрузочных ISO-файлов.
Создание WinPE.ISO,
создание файла ответов,
sysprep,
capture,
Изменения и добавки,
deploy (apply) image individually or with WDS включая файл ответов.
Я не нашел одной определенной статьи или учебника, которые бы кратко и понятно показали всю картину Windows Deployment, объяснили, какие шаги нужно сделать и для чего предназначена каждая утилита, а также пошагово и с иллюстрациями показали все этапы большого пути, учитывая всевозможные проблемы и подводные камни. Пришлось взяться за это самому, собрав информацию из разных источников и опробовав все на практике. Наш завет: правду, одну только правду и ничего, кроме правды.
Windows Deployment:
WDS - осуществляет реальный deployment.
WDS устанавливается на серверных системах Window Server 2008/R2.
WAIK - custom installation, image capturing and applying.
WAIK существует для операционных систем, начиная с Vista.
В случае, когда не нужно изменять оригинальный образ, можно воспользоваться готовыми WIM образами с диска Vista или Win7 и распространять их при помощи WDS. Это довольно несложная операция.
Если же нужно создать образ определенной конфигурации с заранее установленными программами, то после инсталляции и настройки Windows нужно будет воспользоваться набором инструментов WAIK. WAIK умеет снимать образы с готовых систем и применять их к новым. Это аналогично тому, что делают программы Ghost, Acronis, Paragon. Основной инструмент, ответственный за снятие и применение образов - ImageX. Кроме того, при помощи WAIK можно создать файл ответов с различными настройками, например, с указанием Product Key. В дополнение к этому WAIK способен внедрять хот-фиксы, драйверы и программы в качестве пост-инсталляционных задач. Т.е., если нужно иметь компьютер с установленным Office, это можно сделать одним из двух способов: инсталлировать Office и затем снять образ или создать пост-инсталляционную задачу.
Не все, что было сказано в отношении образов, относится к WinXP, т.к. на оригинальном диске он существует не как образ, а в виде набора файлов. При желании сделать автоматизированный deployment XP, нужно его сначала проинсталлировать на компьютер, а затем захватить образ. Получившийся образ уже пригоден для централизованного распространения при помощи WDS.
На дисках Vista и Win7 кроме образа INSTALL.WIM существует образ BOOT.WIM, необходимый для загрузки инсталляционного окружения. Его можно использовать как для загрузки по сети, так и для создания загрузочного диска WindowsPE. В обоих случаях результат одинаков. Интересно, что на практике можно смешивать разные загрузочный и инсталляционный образы. Т.е., при помощи загрузочного образа Vista можно установить как Vista, так и Win7 или же наоборот.
WindowsPE используется тогда, когда сетевая карта компьютера не поддерживает стандарт PXE, необходимый для загрузки по сети.
Кроме того WindowsPE можно использовать для решения компьютерных проблем, в частности, когда компьютер не способен загрузиться самостоятельно.
Интересная возможность - подготовка к захвату образа при помощи виртуального компьютера. Во-первых экономится компьютер, во-вторых упрощается установка драйверов (их роль выполняют integration services в Hyper-V), в-третьих перезагрузки проходят быстрее, в-четвертых все операции можно производить удаленно.
Единственное но, перед захватом образа с подготовленного компьютера нужно не забыть удалить Integration Services.
=Понятия=
WDS (Windows Deployment Services) - server role for deployment Windows WIM images.
WAIK (Windows Automated Installation Kit) - application for image modifying and creating answer files with Windows SIM
Windows SIM (Windows System Image Manager) - tool for creating answer file.
Answer file - file with answers for installation questions, for example - Product key.
Если возникает ошибка при попытке создания файла каталога, можно воспользоваться файлом с инсталляционного диска.
WinPE - bootable disk with ImageX and other tools.
ImageX - capture (create image), mount/unmount drives, commit and apply (restore image). It is main part of WAIK and run typically from WinPE.
Dism - Инструмент для работы с образом.
Capture image - загрузочный образ, модифицированный для загрузки утилиты захвата, вместо setup. Результат работы утилиты - install image, который можно добавить в WDS.
Discover image - загрузочный образ, использующийся для начала установки.
Sysprep - clear hardware dependinces and SID.
BDD (Business Desktop Deployment).
MDOP (Microsoft Desktop Optimisation Pack).
Если взять нетронутый образ с оригинального диска Windows Vista или 7 и вставить в WDS, то в результате мы получим обычную установку Windows с той лишь разницей, что она будет происходить по сети. Что это дает? Во-первых, не нужно вскрывать компьютер или подсоединенять к нему внешние жесткие диски и cd/dvd. Соответственно, не нужно заботиться об их наличии. Во-вторых, поскольку процесс уже налажен, легко будет в дальнейшем заменить оригинальные образы другими, предварительно сконфигурированными, с файлами ответов, драйверами, программами и т.д. Можно даже будет держать образы, не прошедшие sysprep и специфичные для определенных типов железа, возможно, с различным набором программ. Т.е., то для чего часто используют Ghost, Acronis, Paragon и т.д.
=Make WinPE=
1. Copy x86 C:\WinPE_x86
Copype amd64 C:\winpe_x64
2 . Copy "C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE.WIM C:\MyWinPE\ISO\sources\Boot.WIM
3. Copy "C:\Program Files\Windows AIK\Tools\x86\ImageX C:\MyWinPE\ISO\
4. ImageX /mountrw C:\c-drive.wim 1 C:\mounted-images\
dism /Mount-WIM /WimFile:C:\winpe_x86\ISO\sources\boot.wim /index:1 /MountDir:c:\winpe_x86\mount
5. oscdimg -n -bC:\MyWinPE\etfsboot.com C:\MyWinPE\ISO\ C:\MyWinPE.ISO
=Create answer file=
Это делается при помощи Windows SIM
=Syspreping OS=
For Vista/7
C:\Windows\System32\sysprep\sysprep.exe /oobe /generalize /unattend:sysprep.xml
(for Windows XP take sysprep from original CD, Deploy.cab file).
If after syspreping and rebooting you come with error "The system registry contains invali file paths." it's what you have to do:
1. Before syspreping export Mounted Devices key from a registry (HKLM\SYSTEM\MountedDevices) and don't close it!
2. Open a cmd prompt and run sysprep -oobe -generalize -quit
Seems that Sysprep delete this registry key. In my opinion this is a bug.
3. Then import to registry the saved Mounted Devices key.
4. Shutdown computer and Boot it with WinPE.
5. Capture disk image with ImageX (or Ghost).
=Capture image=
E:\ImageX /capture D: D:\MyImages.WIM "MyVista86image"
Будьте внимательны и дважды проверьте, какой логический диск вы захватываете и куда. Захват нужно осуществлять с логического диска, на котором находится программа ImageX.
Как вы, наверное, заметили целевым местом, на которое можно класть образ, может быть источник, то-есть тот логический диск, с которого образ снимается.
Бывает трудно понять, сколько логических дисков существует и какие у них буквы. Есть хороший совет, найденный на просторах Интернета. Если нужно узнать, какие логические диски существуют и какие у них буквы, можно открыть программу Notepad и использовать ее диалог Save as или Open вместо Windows Explorer.
=Mounting image=
ImageX /mountrw C:\c-drive.wim 1 C:\mounted-images\
dism /Mount-WIM /WimFile:C:\winpe_x86\ISO\sources\boot.wim /index:1 /MountDir:c:\winpe_x86\mount
=Make ISO=
=Apply (Deploy)=
ImageX /apply D:\MyImages.WIM 1 C:\
P.S.
Take in mind that WAIK-7 is not supporting WinXP, for working with XP you have to deal with WAIK-Vista.
P.S.2
If after syspreping and rebooting you come with error "The system registry contains invali file paths." it's what you have to do:
1. Before syspreping export Mounted Devices key from a registry (HKLM\SYSTEM\MountedDevices) and don't close it!
2. Open a cmd prompt and run sysprep -oobe -generalize -quit
Seems that Sysprep make deleting
3. Then import to registry the saved Mounted Devices key.
4. Shutdown computer and Boot it with WinPE.
5. Capture disk image with ImageX (or Ghost).
сделать Sysprep:
На висте: C:\windows\system32\sysprep\sysprep.exe /oobe /generalize /shutdown (/quit)
на XP: sysprep -mini -reseal
Далее делается capturing при помощи диска WindowsPE или Capture image по сети и ImageX, который в них содержится.
GUI для imagex = gImageX
При загрузке обычно нужно нажимать F12.
Если используется загрузочный образ Server 2008, то в меню выбора OS можно будет увидеть только серверные системы. Возможно дело том, что он 64-битовый, а не в том, что он серверный. Это нужно будет проверить.
Лучшая информация об Answer file была найдена в книге Майнази о Windows Server 2008 R2.
Для эксперимента была выбрана виртуальная машина с 1-м процессором, находящаяся на сервере Hyper-V. Намеренно был взят образ реального компьютера Lenovo с целью убедиться, что различная аппаратная платформа не приводит к проблемам.
== Creating PE3 Bootable USB device. ==
I’ve used Windows PE for a long time. And I’ve grown to love it. It’s an extremely useful tool, not just for OS installation, but for diagnostics.
Since there’s a version of WinPe for x64 & x86 (& itanium) I like to keep both x64 & x86 on my USB stick. Essentially copying the each version to the root of the USB stick as needed. Meaning at any one time I have three copies of WinPE on my USB stick. Other applications I copy directly to my USB stick, so that I don’t have to remount the image every time i need another application added.
Shortly after Windows 7 was released came a new version of WinPE, WinPE 3.0 on the Windows Automated Installation Kit.
Preparing the USB stick.
You’ll need to prepare the USB stick. To do this open a command prompt using Run As Administrator and use the following commands.
diskpart
list disk
select disk 1
clean
create partition primary
select partition 1
active
format quick fs=fat32
assign
exit
exit
Make sure you select the correct disk by adjusting the third command above.
Getting WinPE 3.0 Quickly
I’ve already done this so I’ve uploaded it to save you some time. The new Windows AIK is 1.75Gb my files are 170Mb & 146Mb for x64 & x86 respectively. I’ve detailed the packages I’ve used below.
Download WinPE 3 x86 Architecture [146Mb]
Download WinPE 3 x64 Architecture [170Mb]
Files are hosted with HotFile as I don’t have enough storage to host them myself.
Both x86 & x64 versions are available.
WMI, HTA & Scripting Packages
ImageX copied to the image (System32 folder).
Once you’ve downloaded the file above, you can either copy the contents of the version of WinPE you wish to use to the root of the USB stick.
Creating a WinPE 3 Image
To create your own customised WinPE 3 image, you can follow Microsoft’s instructions here. The page details all the packages you can install and how to install them. The commands I used for each version are below.
Remember to run the Deployment tools Command Prompt As Administrator.
32-Bit WinPE 3
copype.cmd x86 c:\winpe_x86
copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim
Dism /Mount-Wim /WimFile:C:\winpe_x86\ISO\sources\boot.wim /index:1 /MountDir:C:\winpe_x86\mount
Dism /image:C:\winpe_x86\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\winpe-wmi.cab"
Dism /image:C:\winpe_x86\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\winpe-hta.cab"
Dism /image:C:\winpe_x86\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\winpe-scripting.cab"
copy "C:\Program Files\Windows AIK\Tools\x86\imagex.exe" C:\winpe_x86\mount\Windows\System32\imagex.exe
Dism /unmount-Wim /MountDir:C:\winpe_x86\mount /Commit
64-Bit WinPE 3
copype.cmd amd64 c:\winpe_amd64
copy c:\winpe_amd64\winpe.wim c:\winpe_amd64\ISO\sources\boot.wim
Dism /Mount-Wim /WimFile:C:\winpe_amd64\ISO\sources\boot.wim /index:1 /MountDir:C:\winpe_amd64\mount
Dism /image:C:\winpe_amd64\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\amd64\WinPE_FPs\winpe-wmi.cab"
Dism /image:C:\winpe_amd64\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\amd64\WinPE_FPs\winpe-hta.cab"
Dism /image:C:\winpe_amd64\mount /Add-Package /PackagePath:"C:\Program Files\Windows AIK\Tools\PETools\amd64\WinPE_FPs\winpe-scripting.cab"
copy "C:\Program Files\Windows AIK\Tools\amd64\imagex.exe" C:\winpe_amd64\mount\Windows\System32\imagex.exe
Dism /unmount-Wim /MountDir:C:\winpe_amd64\mount /Commit
Once you’ve followed all the instructions you can copy the contents of c:\
6 comments:
Ryan said...
While your script uses DISM to install the language neutral packages, it fails to install the language specific packages. For example, on a 32-bit platform (for users in the US), you could find language specific packages in "C:\Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\en-us".
6 November 2009 09:47
www.daiowen.co.uk
== WinPE 3.0 ==
http://4sysops.com/archives/build-a-bootable-windows-pe-3-0-usb-drive-with-rescue-tools-part-1/
For Windows PE 1.0, the minimalist Windows based on Windows 2003/XP, you needed an SA (Software Assurance), OEM, or ISV license. When Windows Vista was released everyone had access to Windows PE 2.0. This also applies to the Windows 7-based edition, Windows PE 3.0. Windows PE (Preinstallation Environment) was originally designed to deploy Windows. However, it is also useful in creating your own customized rescue boot media. In this article, I will describe how you can create a bootable Windows PE 3.0 (WinPE) USB stick, and, in my next post, I will show how to add your own rescue tools and how to keep your rescue stick up-to-date without much hassle. You will see that the procedure described here is much more convenient than most solutions you’ll find on the web.
1. Create a bootable USB drive
Before you get started, you have to make your flash drive bootable. I have already described this procedure in my post about the Windows 7 USB/DVD Download Tool. For your convenience here is the command sequence, which you should run on a command prompt with admin rights:
diskpart list disk select disk # clean create partition primary select partition 1 active format quick fs=fat32 assign exit
Replace ‘#’ with the drive number of your USB drive. Be careful because this procedure will erase the whole drive!
2. Copy the WinPE 3.0 files to the USB drive
WinPE 3.0 is part of the Windows Automated Installation Kit (WAIK) for Windows 7, which you can download here. Once you have installed the WAIK, you’ll find a folder of the Windows AIK on the Windows Start Menu. Launch the Deployment Tools Command Prompt and enter this command:
copype.cmd x86 c:\winpe_x86
Then, copy winpe.wim to the correct folder:
copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim
Now, copy WinPE to your USB drive:
xcopy C:\winpe_x86\iso\*.* /e G:\
In this example, ‘G:’ is the drive letter of your flash drive.
Now you should be able to boot from your WinPE 3.0 USB drive. In my next post, I will outline the interesting part—that is, how to prepare your USB drive so that you can add new tools without starting again from scratch.
WinPE 3.0
http://4sysops.com/archives/build-a-bootable-windows-pe-3-0-usb-drive-with-rescue-tools-part-1/
For Windows PE 1.0, the minimalist Windows based on Windows 2003/XP, you needed an SA (Software Assurance), OEM, or ISV license. When Windows Vista was released everyone had access to Windows PE 2.0. This also applies to the Windows 7-based edition, Windows PE 3.0. Windows PE (Preinstallation Environment) was originally designed to deploy Windows. However, it is also useful in creating your own customized rescue boot media. In this article, I will describe how you can create a bootable Windows PE 3.0 (WinPE) USB stick, and, in my next post, I will show how to add your own rescue tools and how to keep your rescue stick up-to-date without much hassle. You will see that the procedure described here is much more convenient than most solutions you’ll find on the web.
1. Create a bootable USB drive
Before you get started, you have to make your flash drive bootable. I have already described this procedure in my post about the Windows 7 USB/DVD Download Tool. For your convenience here is the command sequence, which you should run on a command prompt with admin rights:
diskpart list disk select disk # clean create partition primary select partition 1 active format quick fs=fat32 assign exit
Replace ‘#’ with the drive number of your USB drive. Be careful because this procedure will erase the whole drive!
2. Copy the WinPE 3.0 files to the USB drive
WinPE 3.0 is part of the Windows Automated Installation Kit (WAIK) for Windows 7, which you can download here. Once you have installed the WAIK, you’ll find a folder of the Windows AIK on the Windows Start Menu. Launch the Deployment Tools Command Prompt and enter this command:
copype.cmd x86 c:\winpe_x86
Then, copy winpe.wim to the correct folder:
copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim
Now, copy WinPE to your USB drive:
xcopy C:\winpe_x86\iso\*.* /e G:\
In this example, ‘G:’ is the drive letter of your flash drive.
Now you should be able to boot from your WinPE 3.0 USB drive. In my next post, I will outline the interesting part—that is, how to prepare your USB drive so that you can add new tools without starting again from scratch.
- Posted using BlogPress from my iPad