- Установка windows через winpe
- Установка Windows через PXE
- План работ
- WinPE через PXE
- Сборка образа WinPE
- Автоматизация процесса создания образа WinPE
- config.bat
- generate.bat
- unpack.bat
- import_start.bat
- driver.bat
- extractBootPXE.bat
- pack.bat
- export.bat
- pack_dscard.bat
- setup.bat
- createBCD.bat
- Настройка сервера загрузки
- Сервис tftpd-hpa
- Настройка сервиса общих каталогов Samba
- Образ Window 7 и установовчный скрипт setup.bat
- В итоге все получилось
- Добавить комментарий Отменить ответ
Установка windows через winpe
Сообщения: 35936
Благодарности: 6473
Конфигурация компьютера | |||||||||||||||||||||||
ОС: Windows 10 Pro x64 Release Preview | |||||||||||||||||||||||
» width=»100%» style=»BORDER-RIGHT: #719bd9 1px solid; BORDER-LEFT: #719bd9 1px solid; BORDER-BOTTOM: #719bd9 1px solid» cellpadding=»6″ cellspacing=»0″ border=»0″> | |||||||||||||||||||||||
Конфигурация компьютера |
Материнская плата: ASRock N68C-S UCC |
HDD: WDC WD3200AAJS-00L7A0 320 gb SATA |
Звук: VIA VT1705 @ nVIDIA nForce 7025-630a (MCP68SE) |
CD/DVD: LG HL-DT-ST DVDRAM GH22NS50 |
Ноутбук/нетбук: Ноутбук: SAMSUNG NP-300E5Z (NP300E5Z-S03RU) / Нетбук: Acer Aspire One AO722-C6Ckk |
Прочее: TP-LINK TL-WR1043ND, TP-LINK TL-WDR3500 |
Конфигурация компьютера |
ОС: Windows 10 Pro x64 Release Preview |
переносим нужные файлы с С: на D:, С: форматируем » |
А в чем тайный смысл этого переноса? Сначала вы тратите время на копирование дистрибутива на D, потом происходит извлечение файлов из WIM на C.
1. Сделайте загрузочную флэшку с дистрибутивом Windows 7.
2. Положите в корень файл ответов без параметров конфигурирования дисков.
3. Загрузитесь, сконфигурируйте разделы хоть в GUI, хоть SHIFT+F10 -> diskpart.
4. Выберите раздел и запустите установку. Установщик извлечет файлы из WIM на C.
——-
Канал Windows 10, etc | Чат @winsiders
А в чем тайный смысл этого переноса? » |
Сначала вы тратите время на копирование дистрибутива на D » |
Загрузитесь, сконфигурируйте разделы хоть в GUI, хоть SHIFT+F10 -> diskpart » |
Конфигурация компьютера |
ОС: Windows 10 Pro x64 Release Preview |
Намного удобнее это делать из-под LiveCD/BootCD (DVD/USB) на базе WinPE, к тому же под рукой оказывается масса утилит на все случаи жизни. » |
Так установочная флэшка тоже на базе WinPE! И что вам мешает сложить эти утилиты в отдельную папку на установочной флэшке? Ведь среда PE должна быть такой же разрядности, как и устанавливаемая Windows, а не на основе LiveCD неизвестного происходждения.
В том, чтобы сохранить важные данные, т.к. люди очень любят их хранить на «Рабочем столе» и в «Моих документах», то бишь на С: » |
Нет, не трачу. Имеется ввиду, что D: — это буква флэшки с WinPE, там же папка с ХР(i386). » |
Спасибо, что с третьей попытки вы все-таки выдали тайну. А то ведь буквы диска в PE совсем не такие, как на самом деле.
Ладно, теперь я открою свою тайну
——-
Канал Windows 10, etc | Чат @winsiders
Это сообщение посчитали полезным следующие участники:
Ведь среда PE должна быть такой же разрядности, как и устанавливаемая Windows, а не на основе LiveCD неизвестного происходждения. » |
А вот и не обязательно! Решение нашёл сам — использование сторонней утилиты WinNTSetup2 — это будет заведомо универсальное решение для старта установки практически любой системы из-под WinPE любой инкарнации.
Система ставится очень быстро, порядка 3-5 мин.
Установка Windows через PXE
Очень часто возникает необходимость устанавливать операционную систему Windows, в рамках одного компьютера можно воспользоваться диском, флешкой, я предлагаю способ устанавливать эту операционную систему через локальную сеть, в этом нам поможет сервер сетевой загрузки, рассмотренный в статьях тут и тут
Все нижеописанные скрипты я поместил в репозиторий git
План работ
1. Устанавливаем среду сборки образов предустановки WinPE
2. Выполняем сборку wim образа
3. Создаем конфигурацию загрузки на сервере загрузки
WinPE через PXE
Для того чтобы поставить Windows нам потребуется система предустановки Windows, которая называется WinPE.
Ее можно сделать скачав пакет ADK с сайта Microsoft
После установки можно приступать к сборке образа
В рабочем каталоге необходимо создать каталог drivers, в который можно будет сложить драйвера на сетевые карты для образа WinPE
Сборка образа WinPE
Я создал несколько скриптов позволяющих автоматически собирать образы, заточенные под установку ОС Windows.
В Windows7 мне пришлось отключать проверку цифровой подписи драйверов, так как команда dism вываливалась с ошибками, это делается при старте системы, клавишей F8 вызываем меню загрузки и выбираем «отключение обязательной цифровой подписи драйверов».
Автоматизация процесса создания образа WinPE
Скрипты описанные ниже представлены в порядке их запуска и имеют достаточно подробное описание, запускаются они как в автоматическом режиме с помощью setup.bat, так и по отдельности, необходимые переменные помещаю в config.bat
config.bat
В этом скрипте устанавливаем рабочую дерикторию и архитектуру создаваемого образа
arch могут быть «x86″,»amd64»
generate.bat
Создание рабочей дериктории winpe, в процессе работы в каталоге который мы указали появится подкаталог с названием архитектуры. В версииях SDK для Win10 были изменнены пути к скрипту copype, теперь чтобы его установить требуется пакет Windows PE add-on for ADK.
dp0 config.bat
copype %arch% %workdirectory%\%arch%
unpack.bat
Скрипт распаковки созданного wim образа, распаковывает в каталог mount
dp0 \config.bat
dism /Mount-Image /Imagefile:»%workdirectory%\%arch%\media\sources\boot.wim» /index:1 /MountDir:»%workdirectory%\%arch%\mount»
import_start.bat
Помещаем скрипт автозагрузки в системный каталог, в качестве скрипта автозагрузки выступает startnet.cmd, который можно отыскать в примонтированном образе /mount/windows/system32
dp0 config.bat
xcopy /Y %
dp0 startnet. cmd %workdirectory%\%arch% \mount\windows\system32\
driver.bat
Импортируем рекурсивно драйвера на сетевые карты, драйвера должны быть сложены возле каталога со скриптом, команда dism выбирает inf файлы и по ним ищет остальные модули драйвера.
dp0 config.bat
dism /image:%workdirectory%\%arch%\mount /add-driver /driver:»%workdirectory%\drivers» /recurse /forceunsigned
extractBootPXE.bat
Копируем из wim образа файлы для загрузки через PXE, в самом wim образе находятся необходимые модули для загрузки через PXE. Кроме того у меня не получилось загрузиться по сети с pxeboot.n12, но достаточно было ео переименовать заменив n12 на 0 как загрузка прошла без ошибок.
dp0 config.bat
mkdir %workdirectory%\%arch% \PXE
echo f | xcopy /Y %workdirectory%\%arch% \mount\windows\boot\pxe\pxeboot.n12 %workdirectory%\%arch% \PXE\pxeboot.0
xcopy /Y %workdirectory%\%arch% \mount\windows\boot\pxe\bootmgr.exe %workdirectory%\%arch% \PXE
mkdir %workdirectory%\%arch% \PXE\Boot
xcopy /Y %workdirectory%\%arch% \media\Boot\boot.sdi %workdirectory%\%arch% \PXE\Boot
pack.bat
Упаковываем в образ рабочую деррикторию, следует отметить что необходимо из нее выйти (она находится в каталоге mount), иначе образ не отмонтируется.
dp0 \config.bat
dism /Unmount-Image /MountDir:»%workdirectory%\%arch%\mount» /commit
export.bat
Выгружаем из wim образа только наш слой, так как все наши изменения хранятся в образе в виде наслоений и образ начинает понемногу расти, тем самым увеличивая время загрузки.
dp0 \config.bat
Dism /Export-Image /SourceImageFile:%workdirectory%\%arch%\media\sources\boot.wim /SourceIndex:1 /DestinationImageFile:%workdirectory%\%arch%\PXE\winpe%arch%.wim
Если необходимо откатить изменения которые мы делали после распаковки, то запускаем скрипт pack_dscard.bat
pack_dscard.bat
dp0 \config.bat
call %
dp0 var.bat
dism /Unmount-Image /MountDir:»%workdirectory%\%arch%\mount» /discard
setup.bat
Автоматизируем процесс создания wim образа, запустив все созданные скрипты по очереди.
dp0 \config.bat
call %
dp0 \generate.bat
call %
dp0 \unpack.bat
call %
dp0 \import_start.bat
call %
dp0 \driver.bat
call %
dp0 \extractBootPXE.bat
call %
dp0 \pack.bat
call %
Еще понадобится файл с описанием загрузки BCD, он не заработал у меня из среды средств развертывания, поэтому запускаю средствами cmd с повышенными правами
createBCD.bat
dp0 config.bat
bcdedit -createstore %workdirectory%\%arch% \PXE\Boot\BCD
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -create < ramdiskoptions >/d «Ramdisk options»
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -set < ramdiskoptions >ramdisksdidevice boot
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -set < ramdiskoptions >ramdisksdipath \Boot\boot.sdi
for /F «tokens=2» %%i in ( ‘bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -create /d «MyWinPE Boot Image» /application osloader’ ) do set guid= %%i
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -set %guid% systemroot \Windows
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -set %guid% detecthal Yes
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -set %guid% winpe Yes
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -set %guid% osdevice ramdisk= [ boot ] \winpe %arch% .wim, < ramdiskoptions >
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -set %guid% device ramdisk= [ boot ] \winpe %arch% .wim, < ramdiskoptions >
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -create < bootmgr >/d «Windows PE BootManager»
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -set < bootmgr >timeout 2
bcdedit -store %workdirectory%\%arch% \PXE\Boot\BCD -set < bootmgr >displayorder %guid%
В результате работы скриптов у получается следующая структура каталогов:
Настройка сервера загрузки
Копируем содержимое каталога PXE в корень tftp каталога сервера загрузки
Так как windows использует другой разделитель для своих путей, то нам необходимо сделать карту символов для tftp сервера, для этого в файле конфигурации /etc/default/tftp-hpa вносим изменения и указываем путь к файлу с картой:
Сервис tftpd-hpa
TFTP_USERNAME= «nobody»
TFTP_DIRECTORY= «/srv/template»
TFTP_ADDRESS= «0.0.0.0:69»
TFTP_OPTIONS= «—secure -v -c -m /srv/template/tftpd.remap»
Создаем файл tftpd.remap с таким содержимым:
Это правило будет заменять все обратные слешы на прямые, затем помещаем этот файл также в корень tftp сервера (чтобы нам легко было изменить в случае чего)
Перезапускаем tftp-hpa сервер
Настройка сервиса общих каталогов Samba
Для установки нам еще понадобится сервер samba,в debian и убунту он ставится командой
в конфигурационном файле /etc/samba/smb.conf добавляем секцию описывающую наш общий каталог:
Образ Window 7 и установовчный скрипт setup.bat
Теперь распаковываем образ с win7 и помещаем каталог sources в публичный каталог samba.
Создаем скрипт start.bat, в котором запускаем програму setup.exe из распакованного sources
Последнее что нам осталось — это прописать в меню загрузки пункт с winpe:
В итоге все получилось
Скрипты в GitHub
После этого у нас загрузившись через PXE начнется загрузка WinPE:
Добавить комментарий Отменить ответ
Для отправки комментария вам необходимо авторизоваться.
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.