Windows 7

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

В файле «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

        Заканчиваем редактирование, переходим в каталог c:\windowspe-x86\. Выполняем запись и размонтирование исправленного образа:

Dism /Unmount-WIM /MountDir:c:\windowspe-x86\mount /Commit

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

Часть 3 закончилась на рассмотрении ошибок возникающих при загрузке wim образа с Windows 7. Продолжим настройку WDS.
server_args = -s /srv/tftpboot -m /srv/tftpboot/rules -v

Это означает что в базе 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»:
 
 
И посмотрите что именно и в какой последовательности запрашивает у сервера система. Это также очень удобно делать при помощи сетевого сканера 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

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

Пользователей онлайн: 0.

Пользователи

  • taptun123
  • Dikiymax
  • Boris_bb
  • lebedev31337@gm...
  • async
  • AESmall
  • Sveor
  • Namo
  • Pedchenko
  • emelinsv