Windows 7

Готовый рецепт для создания загрузочной "флэшки" WinPE/WinRE

Достаточно старая статья с сайта www.thg.ru, но зерна смысла еще остались. Рекомендуется к прочтению.

Любой хороший рецепт начинается со списка ингредиентов. Вот что вам понадобится для создания загрузочной "флэшки" WinPE/WinRE (предполагается использование Windows Vista с пакетом обновления SP1 или выше).

  1. Пакет автоматической установки Windows Automated Installation Kit (WAIK). Эта утилита предлагается в виде ISO-образа для записи на DVD (ISO - формат загрузочного диска, принятый Международной организацией по стандартизации (International Organization for Standardization)). Если у вас есть Nero Burning ROM, Easy DVD Creator или какая-нибудь другая программа для прожига DVD, то используйте их. Если нет, тогда воспользуйтесь свободно распространяемой утилитой "ISO Recorder v3" от Alex Feinman. Если вы хотите создать загрузочную среду восстановления Vista WinRE (с теми же функциями восстановления, описанными выше), вам понадобится установочный DVD для Vista, с которого вы сможете взять эту утилиту.
  2. USB-"флэшка" (UFD) размером как минимум 256 Мбайт. Гигабайтная модель подойдёт больше, если вы решите переключаться между загрузочными образами Windows PE и Windows RE. Если на вашей "флэшке" что-то записано, то скопируйте это куда-нибудь, потому что вам придётся стереть "флэшку" на этапе подготовки к созданию загрузочного образа WinPE или WinRE.
 

Создание образа WinPE

Без учёта времени скачивания на выполнение этой задачи уйдёт около часа. Далее представляем вам последовательные шаги, которые нужно выполнить для создания тех файлов, которые необходимо будет скопировать на UFD:

  • 1. Скачайте Windows AIK и ISO Recorder v3 (ссылки приведены выше).
  • 2. Запишите ISO-образ на DVD-диск, затем запустите файл под названием startcd.exe для запуска Windows AIK. Вот что должно появиться на экране.

Универсальный сервер сетевой загрузки и установки. Продолжение.

С разрешения редакции журнала "Системный администратор" публикую продолжение статьи.

Универсальный сервер сетевой загрузки и установки. Часть 2.

В первой части статьи [1] были рассмотрены принципы работы, создание и конфигурирование сервера для инсталляции различных операционных систем в сети. Подготовили и настроили для установки в обычном режиме (вопрос–ответ) два дистрибутива: Microsoft Windows XP и Microsoft Windows 7.

Рассмотрим процесс автоматизации установки операционных систем. Автоматическая установка Windows XP подробно описана не только в официальной документации Microsoft [2], но и в огромном количество how-to разбросанным по интернету [3]. Поскольку Windows XP снята с поддержки, то перейдем к обзору автоматической установки флагманской операционной системы компании Microsoft Windows 7.

Создание файла ответов

Автоматическая установка обеспечивается при наличии в дистрибутиве Microsoft Windows XP текстового файла настройки системы winnt.sif и диспетчер установки setupmgr.exe. В последующих версиях Windows (Microsoft Windows Vista и старше) эту роль играет файл ответов autounattend.xml. Как понятно из расширения он представляет собой простую XML-структуру (рис.1).

 

Рисунок 1. Структура файла autounattend.xml

Структура файла autounattend.xml

В нем можно указать используемые по умолчанию параметры Internet Explorer, настройку сети, принадлежность к домену и т.д. В связи с тем, что теперь в Windows используется модульная архитектура, появилась возможность тонкой настройки каждого компонента устанавливаемой системы, за счет вложенных элементов структуры XML.

Создать файл ответов можно в любом текстовом редактором, но лучше все действия производить при помощи диспетчера установки Windows (Windows Automated Installation Kit или сокращенно WAIK) [4]. Кроме того WAIK проверяет корректность указанных значений и имеет очень удобно реализованную систему помощи. Подробные сведения о том или ином параметре настройки можно узнать из контекстного меню его интерфейса. Вместе с этим продуктом поставляется набор документации, включающий руководство пользователя пакета автоматической установки Windows, а так же средства миграции пользовательской среды и другие документы.
Для просмотра этих документов после установки Windows AIK нажмите кнопку Пуск, последовательно выберите Все программы | Microsoft Windows AIK | Документация, а затем откройте необходимый файл справки. По умолчанию все документы находятся в папке %ProgramFiles%\Windows AIK\Docs\CHMs. Дополнительно в папке C:\Program Files\Windows AIK\Samples обслуживающего компьютера [1] можно найти образец файла ответов (Corp_autounattended_sample.xml).

Рассмотрим пример развертывания образа Windows 7 используя WAIK .Для этого выполним следующие действия:

  • На обслуживающем компьютере устанавливаем DVD-диск Microsoft Windows 7 необходимой для вас редакции («Professional», «Ultimate» и т.п. - далее DVD) исоздаем папку c:\windows7-x86, копируем в нее файл Install.wim из каталога DVD\Sources;
  • Запускаем диспетчер установки Windows: Пуск | Все программы | Microsoft Windows AIK | Диспетчер установки Windows.
  • В появившемся диалоговом окне Выбрать образ Windows переходим в папку c:\windows7-x86 и нажимаем кнопку Открыть.
  • Выбираем нужный образ Windows (c:\windows7-x86\Install.wim) и нажимаем на кнопку ОК. На предложение мастера создать файл каталога— отвечаем утвердительно.
  • В меню Файл выполняем команду Новый файл ответов.

Универсальный сервер сетевой загрузки и установки. Окончание

В файле «install_menu.cmd» реализован выбор операционных систем для установки:

@ECHO OFF
CD /D "%~dp0"
SETLOCAL
COLOR 1E
wselect.exe install_menu.lst "Выбор системы для установки" /menu /cmdCenter /oemlist /fixedfont /fs=20
CALL :M%ERRORLEVEL%
ENDLOCAL
GOTO :EOF
:M0
:M1
::Тело скрипта при отказе
ECHO Cancel
EXIT
:M2
:: Тело скрипта запуска X86
ECHO Выбрана система X86
NET USE Z: \\192.168.1.7\win7
IF EXIST Z:\SOURCES\setup.exe (
CD /D Z:\SOURCES
setup.exe /unattend:Z:\autounattend.xml
)
GOTO :EOF

:M3
:: Тело скрипта запуска X64
ECHO Выбрана система X64
NET USE Z: \\192.168.1.7\win7x64
IF EXIST Z:\SOURCES\setup.exe (
CD /D Z:\SOURCES
setup.exe /unattend:Z:\autounattendX64.xml
)
GOTO :EOF

         Скачать архив с этим файлом можно по адресу [12].  Содержание этого архива так же необходимо скопировать в c:\windows7pe-x86\mount\windows\system32. Далее добавляем необходимые вам драйвера (сетевых карт) с помощью команды Dism с параметром /Add-Driver. Эта программа командной строки,  доступна в пакете Windows Automated Installation Kit 2.0  (Windows AIK).

Dism /image:c:\windowspe-x86\mount /Add-Driver /driver:c:\mydriver\video\myvideo.inf

Dism /image:c:\windowspe-x86\mount /Add-Driver /driver:c:\mydriver\net\vboxdrv.inf

Универсальный сервер сетевой загрузки и установки. Часть 4.

Часть 3 закончилась на рассмотрении ошибок возникающих при загрузке wim образа с Windows 7. Продолжим настройку WDS.

Это означает что в базе binlsrv.py (devlist.cache) отсутствует информация о сетевом адаптере установленном в компьютере. Для определения PnP идентификатора устройства запускаем сервер WDS в режиме вывода информации в консоль:

 

и вновь запускаем установку. Как только «ntdetect.com» запросит информацию у WDS в консоле мы увидим такую картину см. рис.6
 
Рисунок 6 WDS в режиме вывода информации в консоль

WDS в режиме вывода информации в консоль

 
В моем случае идентификатор PCI\VEN_1022&DEV_2000 найден в файле netamd2.inf которому соответствует файл устройства pcntpci5.sys. Для решения этой проблемы необходимо найти драйвер с PnP идентификатором PCI\VEN_1022&DEV_2000 и включить его в базу binlsrv.py (devlist.cache) с помощью команды infparser.py <путь к каталогу с новым драйвером>. С целью повышения удобства отладки также можно включить лог tftp. Для этого в файл «/etc/xinet.d/tftp» в строку запуска «server_args» надо добавить ключ «-v»:

server_args = -s /srv/tftpboot -m /srv/tftpboot/rules -v
 

И посмотрите что именно и в какой последовательности запрашивает у сервера система. Это также очень удобно делать при помощи сетевого сканера Whireshark [16]. 
 

Универсальный сервер сетевой загрузки и установки. Часть 3

         Начнем с подготовки фалов для установки Windows XP. Монтируем образ диска с системой: 

mount -o loop /home/iso/winxpsp3.iso /home/temp/xp

Распаковываем и переименовываем файлы для загрузки:

cd /srv/tftpboot/
cabextract /home/temp/xp/I386/SETUPLDR.EX_
mv /home/temp/xp/I386/setupldr.exe ntldr
cabextract /home/temp/xp/I386/STARTROM.N1_
mv /home/temp/xp/I386/startrom.n12 startrom.0
cp /home/temp/xp/I386/NTDETECT.COM ntdetect.com
cp /home/temp/xp/BOOTFONT.BIN bootfont.bin

Копируем сам дистрибутив и переводим имена всех файлов в нижний регистр:

mkdir /srv/tftpboot/winxp
cp /home/temp/xp/* /srv/tftpboot/winxp/
convmv --lower -r --notest --replace *

Разрешим доступ к дистрибутиву через Windows network добавив в файл
«/etc/samba/smb.conf» секцию (сразу добавим секцию и для установки Windows 7):

[reminstall]
path = /srv/tftpboot/winxp/
public = yes
browsable = yes
read only = yes
guest ok = yes
[win7]
path =/srv/tftpboot/win7
public = yes
browsable = yes
read only = yes
guest ok = yes

Перезапускаем samba:

/etc/init.d/samba restart

     Для настройки  ris-linux понадобиться сам дистрибутив [4] и пакет драйверов сетевых карт. Готовый архив можно скачать отсюда [7], а можно изготовить самостоятельно (это позволит разобраться как в дальнейшем добавлять новые сетевые карты и обновлять их драйвера). 
 

Универсальный сервер сетевой загрузки и установки. Часть 2

      Итак продолжим тему сетевой загрузки. Полный комплект необходимых (готовых) конфигурационных файлов можно загрузить отсюда [ris]. В случае графического меню структура каталогов на TFTP сервере будет выглядеть так:

/tftpboot/

   /tftpboot/pxelinux.0  - загрузчик

   /tftpboot/menu.c32   - модуль syslinux для создания меню на экране

   /tftpboot/pxelinux.cfg/

   /tftpboot/pxelinux.cfg/default — описание разделов основного меню

   /tftpboot/pxelinux.cfg/graphics.conf — параметры меню: цвет, высота и т.д.

   /tftpboot/pxelinux.cfg/fixes.menu - описание дополнительного меню (инструменты)

   /tftpboot/pxelinux.cfg/setup.menu - описание дополнительного меню (установки)

           Рассмотрим как происходит загрузка и установка Linux на примере openSuSe11.2. При выборе пункта «suse112»  загрузчик сначала скачивает ядро («kernel suse/suse112x32/linux»), затем файл сжатой  временной файловой системы «initrd» («initrd=suse/suse112x32/initrd»). Как только загрузка завершена «pxelinux.0» запускает на выполнение ядро, передав в качестве аргументов запуска параметры считанные из  конфигурационного файла. Запустившись, уже само ядро подключает (монтирует) каталог с дистрибутивом («install=nfs://192.168.1.7/srv/tftpboot/suse/suse112x32/CD1/»), продолжая  установку.   Следует упомянуть о том, что ядро в этом случае обязательно должно содержать в себе (не как модули) драйвера сетевых карт установленных в компьютерах.

Теги: 
Подписаться на ленту «RSS - Windows 7»

Комментарии

Сейчас на сайте

There are currently 0 users online.