AOMEI PXE Boot: Загрузка компьютеров по сети из файла образа диска. Бездисковая загрузка Windows

Написанию данного поста предшествовало сбор информации по частям и многочасовое курение как русскоязычных, так и англоязычных ресурсов в сети интернет в поиске сравнительно простых способов реализации бездисковой загрузки ПК.

Предпосылкой к изучению данного вопроса стало наличие в сети компьютера, с вышедшем из строя дисковым накопителем. Необходимо было запустить на данном ПК «полноценную» 64-битную операционную систему Windows 7 без использования Linux-сервера, ограничившись только имеющимися в локальной сети Windows системами. Приводимые в данном посте программные продукты распространяются бесплатно и могут работать как на серверных, так и на пользовательских версиях Windows.

Разговор пойдет о замечательной технологии iSCSI, и как мы её можем использовать для загрузки по локальной сети, чтобы сэкономить на стоимости покупки нового дискового оборудования. Постараюсь описать весь процесс конфигурирования наиболее доступным языком как для начинающих администраторов, так и для непросвещенных пользователей.

Для понимания происходящего определимся немного с терминологией:

  • iSCSI (англ. Internet Small Computer System Interface) - протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами;
  • iSCSI Target: (Цель iSCSI) - программа или аппаратный контроллер (HBA), осуществляющие эмуляцию диска и выполняющие запросы iSCSI;
  • iSCSI Initiator: (Инициатор iSCSI) - клиентская программа или аппаратный контроллер, который взаимодействует с iSCSI Target;
  • IQN: (iSCSI Qualified Name) - уникальный идентификатор (имя) iSCSI Target’a или iSCSI Initiator’а;
  • LUN: (Logical Unit Number) - адрес блочного устройства в диапазоне 0-127;
  • DHCP (англ. Dynamic Host Configuration Protocol - протокол динамической настройки узла) - сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP;
  • TFTP (англ. Trivial File Transfer Protocol - простой протокол передачи файлов) используется главным образом для первоначальной загрузки бездисковых рабочих станций.

Введение

Современные операционные системы Windows 7, Windows Server 2008 и всё, что старше, умеют подключаться напрямую на iSCSI target. Проблема только в том, как инициализировать удаленное блочное устройство при включении ПК.

Вспомним, что почти все современные сетевые карты умеют загружаться по технологии PXE. А вот с iSCSI дружат в основном только дорогостоящие серверные сетевые карты, например Intel. Однако, существует как минимум два open source проекта gPXE и iPXE позволяющий при загрузке ПК подключаться iSCSI устройствам. Последний, к слову, форк первого, с немного доработанной системой вывода ошибок и дополнительными опциями.

Есть много способов, как загружаться через gPXE и iPXE. В данном посте мы будем рассматривать загрузку с использованием iPXE и подключением для него необходимых скриптов в процессе загрузки.

Суть такова - при запуске компьютера сетевая карта получает необходимые настройки через DHCP сервер и загружает PXELINUX. Далее загрузчик PXELINUX подключает необходимый скрипт и загружает iPXE, который, в свою очередь, выступает iSCSI инициатором и передает управление диску. До момента инициализации блочного устройства передачу файлов по сети обеспечивает протокол TFTP.

Для чего мы загружаем PXELINUX?

Некоторые могут спросить - а для чего загружать PXELINUX? Во первых, через PXELINUX загрузчик iPXE получает необходимый скрипт для инициализации нужного iSCSI target-а. Во вторых, чтобы можно было построить удобное меню с выбором различных вариантов загрузки. В третьих, если в сети существует несколько бездисковых рабочих станций, то нужно чтобы каждый ПК подключался «к своему» iSCSI-диску и не имел доступа к «чужим» дискам, а значит их нужно как то отделять друг от друга, например, по MAC-адресам. Для этих целей будет использоваться двухстадийная загрузка с использованием PXELINUX.


Но обо всем по порядку. Начнем с установки и настройки в системе Windows необходимого софта для реализации DHCP, TFTP и iSCSI Target-а. Для этого я использовал бесплатно распространяемые программные продукты Tftpd32 и StarWind Virtual SAN . Программа Tftpd32 используется как в роли DHCP сервера, так и в роли TFTP сервера, ну а StarWind Virtual SAN соответственно будет использоваться в роли iSCSI target-а. Скачать данные программы можно на сайте разработчиков, ссылки которых указанны в их названиях. Для скачивание программы StarWind Virtual SAN необходимо будет выбрать на сайте Free версию программы и пройти процесс регистрации, с указанием корпоративного почтового адреса. На указанный вами почтовый адрес придет лицензионный ключ и ссылка на скачивание самой программы.

Настройка программы Tftpd32

Данная программа довольно простая и интуитивно понятная, поэтому приведу просто скриншоты своих настроек:


На вкладке «GLOBAL» у меня отмечены галочкой сервисы TFTP Server, Syslog Server и DHCP Server. На вкладке TFTP в поле Base Directory указана точка, которая означать, что в качестве корневой директорией будет использоваться папка, куда установлена сама программа Tftpd32. На вкладке DHCP в поле Boot File указан название загружаемого файла, которую мы рассмотрим дальше в настройках PXELINUX. На вкладке SYSLOG настройки не требуются.

Цель iSCSI. Настройка программы StarWind Virtual SAN

При установке программа никаких настроек не запрашивает, единственное может дополнительно запустить установку.NET Framework 4, если она еще не установлена в системе. После установки программа запускает свои службы и сразу готова к работе. На рабочем столе создается ярлык StarWind Management Console для управления.

Открываем StarWind Management Console, жмем кнопку Add Server и создаем новый сервер с IP-адресом 192.168.0.1. Имеющийся по умолчанию сервер с IP-адресом 127.0.0.1 можно удалить.
Далее выбираем созданный нами сервер и нажимаем ссылку Add Target. В появившемся окне можем указать свое название IQN цели, активировав галочку Target Name. В частности я указал iqn.2014-11.home:win7-64bit.
Далее выбираем созданный нами Target и нажимаем ссылку Add Device.
В появившейся окне выбираем Hard Disk Device, далее выбираем Virtual Disk, указываем расположение и объем создаваемого диска, задаем объем и параметры кэширования, и создаем дисковое устройство нажатием кнопки Create.

В итоге получаем настроенный и готовый к работе iSCSI Target, имеющий следующий вид:


При необходимости мы можем создавать необходимое количество iSCSI Target-ов и на каждый из них подключить необходимое количество iSCSI дисков. А также обеспечить безопасности доступа к iSCSI Target-ам с использованием CHAP-аутентификации клиентов, нажав по ссылке Add Permission.

Настройка PXELINUX

PXELINUX входит в комплект программ syslinux. Поэтому идем на сайт www.syslinux.org/wiki/index.php/Download , нажимаем на ссылку Download и загружаем zip архив с набором загрузчиков syslinux. Открываем загруженный архивный файл и распаковываем файлы pxelinux.0 из директории core и menu.c32 из директории com32/menu. Файл pxelinux.0 является загрузчиком, который передается клиентскому ПК DHCP сервером, а файл menu.c32 отвечает за построение загрузочного меню. Распакованные файлы размещаем в папку, куда установлена программа Tftpd32 (куда указывает путь в поле Base Directory в настройках TFTP).

В папке программы Tftpd32 создаем вложенную папку pxelinux.cfg, а в нем создаем файл default следующего содержания:
default menu.c32
gfxmenu /erdpxe
prompt 0

MENU TITLE Boot Menu (select the OS to boot)
MENU AUTOBOOT Windows 7 64bit in # seconds
TIMEOUT 50
TOTALTIMEOUT 3000

LABEL Windows 7 64bit
MENU DEFAULT
KERNEL IPXE.KRN
INITRD win7.ipxe

Думаю излишнем писать подробный комментарий к данному файлу, рассмотрим только две последние строчки:
KERNEL IPXE.KRN - указывает на ядро iPXE, которую нужно загрузить.
INITRD win7.ipxe - указывает на файл скрипта с параметрами iPXE

Указанных настроек PXELINUX вполне достаточно для использования дефолтной конфигурации и можно перейти к дальнейшей настройке iPXE, поэтому остающуюся часть текста решил убрать под спойлер.

Создание отдельного загрузочного меню для каждого ПК

Если в сети существует несколько бездисковых рабочих станций, и нужно чтобы каждый ПК имел доступ только «к своему» iSCSI-диску и не имел доступа к «чужим» дискам, то нам нужно будет создать несколько файлов с загрузочным меню для каждого ПК.

При получении файла конфигурации от TFTP сервера клиент ищет подходящую для себя в следующем порядке:
pxelinux.cfg/01-88-99-aa-bb-cc-dd
pxelinux.cfg/C0A800FE
pxelinux.cfg/C0A800F
pxelinux.cfg/C0A800
pxelinux.cfg/C0A80
pxelinux.cfg/C0A8
pxelinux.cfg/C0A
pxelinux.cfg/C0
pxelinux.cfg/С
И если ничего подходящего нет -
pxelinux.cfg/default

Здесь pxelinux.cfg - сама папка с файлами конфигурации.
01-88-99-aa-bb-cc-dd - файл с названием МАС-адрес клиента, в нижнем регистре, разделенный тире, с префиксом 01-.

Соответственно, для каждой бездисковой рабочей станции нам нужно написать «свое» загрузочное меню и разместить в папке pxelinux.cfg с названием файла 01-mac-адрес клиента, в нижнем регистре. Содержимое этих файлов может отличаться, к примеру, только последней строчкой INITRD win7.ipxe .

Инициатор iSCSI. Настройка iPXE

Итак, далее идем на сайт ipxe.org/download и загружаем iso-образ iPXE загрузчика. Из загруженного iso-образа вытаскиваем файл IPXE.KRN и сохраняем его в папке программы Tftpd32.

В этой же папке создаем файл win7.ipxe следующего содержания:
#!ipxe
dhcp net0
set keep-san 1
#login
sanboot iscsi:192.168.0.1::::iqn.2014-11.home:win7-64bit

Строка dhcp net0 данного скрипта указывает, что необходимо получить настройки через DHCP сервер в сети.

Строка set keep-san 1 указывает, что подключение к iSCSI Target-у необходимо сохранить даже если загрузка с данного устройства не удалась (этот параметр необходим, когда нужно устанавливать операционную систему с накопителей CD/DVD).

Если в iSCSI Target настроена CHAP-аутентификации клиентов, то нужно раскомментировать строку #login, которая будет выводит форму для ввода логина и пароля.

Последняя строка непосредственно подключает указанный iSCSI Target, инициализирует удаленный диск и передает процесс дальнейшей загрузки на данное устройство. Синтаксис подключения будет таким iscsi:<Айпи iSCSI target>:::::.

Добавление дополнительных пунктов в загрузочное меню

Если мы хотим добавить в загрузочное меню еще один пункт, например, для загрузки ОС Windws 8.1, то создаем в StarWind Virtual SAN новый Target с указанием IQN цели iqn.2014-11.home:windows8.1, добавляем в него новое дисковое устройство iSCSI, а затем в файле pxelinux.cfg/default добавляем к примеру такие строчки:
LABEL Windows 8.1
KERNEL IPXE.KRN
INITRD win8.1.ipxe

Установка ОС Windows 7

Перед началом установки Windows 7 на бездисковую станцию открываем его BIOS и настраиваем порядок опроса загрузочных устройств следующим образом:
1) Hard Disk
2) Network
3) CD/DVD
4) остальные устройства

Если на ПК имеется установленный жесткий диск, то на время установки Windows его желательно отключить, чтобы компьютер не пытался с него загружаться.

Первым делом мы должны увидеть запуск загрузки через PXE. Если этого не произошло то снова заходим в BIOS и разрешаем загрузку компьютера через сетевой адаптер.

Далее на экране появиться загрузочное меню PXELINUX. Если этого не произошло проверяем, запущена ли на другом компьютере программа Tftpd32, правильно ли она настроена и не блокирует ли его работу firewall-ы, антивирусы или другие программы.

После выбора необходимого пункта загрузочного меню PXELINUX мы должны увидеть запуск iPXE.
В процессе инициализации iPXE должны промелькнут надписи:
Registered as BIOS drive 0x80
Booting from BIOS drive 0x80
Это значит, что ПК удачно подключился к iSCSi диску.

Затем мы увидим ошибку загрузки через iSCSi диск, после чего компьютер перейдет к опросу следующего загрузочного устройства и запустит установка Windows 7 с привода CD/DVD. При этом подключение к iSCSi диску останется активным - за это отвечает указанная в скрипте строчка set keep-san 1.

Для тех, у кого не запускается установка Windows с привода CD/DVD

BIOS некоторых компьютеров, после неудачной попытки загрузки с iPXE, останавливает процесс запуска. Соответственно дальнейшая загрузка установщика Windows с привода CD/DVD не происходит. Такое поведение было замечено, например, на ноутбуках компании Hewlett-Packard. В подобных случаях спасает загрузка с использованием gPXE. Для этого:
1) открываем страницу сайта rom-o-matic.net/gpxe/gpxe-git/gpxe.git/contrib/rom-o-matic/build.php ,
2) в поле Choose an output format выбираем пункт PXE bootstrap loader keep (.kpxe),
3) в самом нижнем поле Embedded Script вводим три строчки нашего скрипта:
dhcp net0
set keep-san 1
sanboot iscsi:192.168.0.1::::iqn.2014-11.home:win7-64bit
4) сохраняем загрузчик gPXE в папку программы Tftpd32 и прописываем название файла на сервере DHCP в поле Boot File,
5) устанавливаем ОС Windows и обратно прописываем название файла pxelinux.0 на сервере DHCP в поле Boot File.



В процессе установки Windows, на этапе выбора дискового устройства мы должны увидеть подключенный нами iSCSi диск. Если iSCSi диск в списке отсутствует, значит установщик Windows не смог автоматически подключить необходимые драйвера для сетевой карты. В этом случае скачиваем с сайта разработчика необходимые драйвера сетевой карты и подключаем их установщику Windows. После этого iSCSi диск должен появиться в списке.

Если получили сообщение о невозможности установки Windows на выбранный диск

Иногда на этапе выбора дискового устройства можно получить сообщение о невозможности установки Windows на выбранный диск и просьбу проверить, включен ли в BIOS контроллер этого диска.

В этом случае первым делом проверьте в BIOS порядок опроса загрузочных устройств. Жесткий диск должен находиться на первой позиции, даже если на компьютере физически не установлен дисковый накопитель.
Если проблема не исчезла, то попробуйте в BIOS-е включать/выключать SATA контроллер, менять режим его работы IDE, ACHI, либо подключить реальный диск на время установки, но установку проводить на iSCSI диск.



После выбора дискового устройства начнется установка Windows 7. Дальше никаких трудностей возникнуть не должно. После установки мы получаем «полноценную» операционную систему Windows 7, работающей на iSCSI диске.

Установка ОС Windows (альтернативный метод)

Не знаю кому как, но мне лично не представляется удобным для каждого установочного образа Windows записывать DVD диск.
Мне привычнее распаковать содержимое установочного диска и запустить установку Windows с жесткого диска. К тому же с жесткого диска операционная система устанавливается быстрее.

Приведу пример, с использованием стандартного загрузчика bootmgr, имеющегося в любом установочном дистрибутиве Windows.
Данный метод подходит также для установки Windows с локальных жестких дисков.

Если коротко, то создаем на iSCSI диске небольшой «активный» раздел, копируем туда содержимое установочного диска Windows, и затем настраиваем MBR, для загрузки с диска установщика Windows. Подробности под спойлером.

Альтернативный метод установки ОС Windows

Итак, откроем на рабочей Windows системе Панель управления - Администрирование - Инициатор iSCSI.
Появиться окно «Свойства: Инициантор iSCSI».

Переходим на вкладку «Обнаружение» и нажимаем кнопку «Обнаружить портал...».
В открывшемся окне вводим IP-адрес нашей цели iSCSI - 192.168.0.1 и нажимаем ОК.
Далее переходим обратно на вкладку «Конечные объекты» и увидим все цели с идентификаторами IQN.
Выбираем в списке нужную цель и нажимаем кнопку «Подключить».
Откроется еще одно окно требующий нашего подтверждения, где также нажимаем ОК.
Если в открывшемся окне оставить галочку «Добавить это подключение в список предпочитаемых конечных объектов» то указанная цель будет автоматически подключаться к системе при каждой загрузке.

Открываем оснастку «Управление компьютером» и переходим на вкладку «Управление дисками». Тут мы увидим, что в нашей системе появилось еще одно дисковое устройство. Создаем на этом диске «Основной раздел», указав размер диска чуть больше размера нашего установочного образа. Далее форматируем под файловую систему NTFS, подключаем любую букву диска и делаем раздел «активным».

Откроем необходимый образ установочного диска программой UltraISO или WinRar и распакуем содержимое образа на созданный в предыдущем пункте раздел диска. Важно, чтобы после распаковки на диске оставалось как минимум 100Мб свободного места (Для Windows 8 рекомендуется 350Мб свободного места). Если свободного места недостаточно, то расширяем выбранный раздел в оснастке «Управление дисками».

Затем скачиваем из интернета программу BOOTICE и запускаем (ссылки приводить не буду, сами сможете найти без труда).
В программе выбираем нужный нам диск из раскрывающегося списка. В моем случае HD6:

В данном окне выбираем последний пункт «Windows NT 5.x / 6.x MBR» и нажимаем кнопку «Install/Config».
На диске будет настроен MBR, загружающий стандартный загрузчик bootmgr из активного раздела диска.

Но рассмотрим еще один момент. Если мы хотим сделать данный раздел скрытым от пользователей и недоступным для операционной системы, то запускаем командную строку от имени администратора и набираем следующие команды:

Diskpart
List disk
Sel disk x (вместо x подставляем номер нужного диска, список которых выводит предыдущая команда)
Sel part 1 (при необходимости список разделов можно посмотреть командой List part)
Remove
Set id=27

После этого данный раздел диска станет технологическим и скрытым. Для этого раздела уже не возможно назначит букву диска и примонтировать его к работающей системе, но устанавливается Windows с данного раздела без проблем.
Получится что то типа раздела восстановления)


Надеюсь данная статья будет вам полезна. Всем удачи!

July 9, 2009 – 12:48 pm

В сервере Windows Server 2008 предложено множество усовершенствований по сравнению с Windows 2003, однако программа резервного копирования не является одним из них. Но даже в этом случае есть несколько восстановительных функций. В этой статье обсуждаются проблемы, о которых нужно знать, прежде чем предпринимать попытку создания резервной копии сервера Windows 2008. Если вы читали первую часть [...]

July 2, 2008 – 1:03 pm

В своей предыдущей статье, я познакомил вас с моделью ссылок взаимодействия открытых систем (Open System Interconnect (OSI)), а также рассказал о ее первом уровне; физическом уровне. В этой части мы обсудим второй уровень, канальный уровень, с точки зрения оборудования. Канальный уровень обеспечивает функциональный и процедурный способы передачи данных между двумя точками. Существует пять основных функций, [...]

November 19, 2007 – 8:53 pm

Собственно, проблема загрузки виндов по сети делится на две. Первое, это драйвер, который даст виндам доступ к сетевому устройству: как минимум, он должен быть boot-capable, и соответственно должен уметь работать без поддержки user-space компонент, SMSS и так далее. Второе, это начальный загрузчик, который загружаемый комп получит по TFTP и которому предстоит эмулить доступ к тому [...]

September 17, 2007 – 4:59 pm

Технология PXE опирается на стандартные протоколы, в том числе TCP/IP и Dynamic Host Configuration Protocol. Много лет назад для того, чтобы сконфигурировать пользовательский компьютер или устранить на нем возникшую неисправность, кому-то из специалистов ИТ-службы или корпоративной службы HelpDesk приходилось брать установочные диски для программных продуктов, а также диски со средствами диагностики и драйверами, и идти [...]

August 23, 2007 – 8:23 pm

Технология NX, разработанная фирмой Nomachine, дает новые возможности для связи и способна оживить старые компьютеры в роли тонких клиентов. Прежде чем перейти непосредственно к описанию NX, перечислю некоторые тенденции, которые сегодня становятся очевидными для многих крупных компаний нашей страны: 1. Компьютерная техника дешевеет и становится более доступной, чем раньше. При этом её производительность удваивается каждые [...]

AOMEI PXE Boot представляет собой свободное программное обеспечение для загрузки компьютеров с ISO по локальной сети. Будучи очень простой в использовании, эта программа позволяет использовать загрузочный образ диска (ISO) для удаленной загрузки нескольких компьютеров, при условии, что они подключены к одной локальной сети. Это делает AOMEI PXE Boot чрезвычайно полезным инструментом для таких задач, как удаленное развертывание и сопровождение приложений, особенно на предприятиях.

Работать с AOMEI PXE Boot довольно просто: вы устанавливаете программу на систему, которая будет использоваться в качестве сервера, монтируете ISO и ждете загрузки клиентских машин. И лучшая часть заключается в том, что AOMEI PXE Boot поддерживает синхронную загрузку нескольких компьютеров одновременно. Давайте узнаем больше об этой замечательной программе, и выясним, как вы можете использовать ее для загрузки компьютеров с ISO по проводной локальной сети.

AOMEI PXE Boot: основное назначение и несколько слов о Windows PE

Важно отметить, что AOMEI PXE Boot в первую очередь предназначен для устранения проблем с компьютерами в сети. Вы можете использовать программу для загрузки нефункционирующей системы в ограниченной среде. Для этой цели AOMEI PXE Boot лучше всего работает с загрузочными образами дисков Linux, или Windows PE. Последняя является операционной системой с ограниченными службами, которая используется для загрузки компьютера в восстановительных или установочных целях. Основанная на ядре Vista, Windows PE не является полноценной операционной системой. Вместо этого она предоставляет безопасную среду для устранения неполадок с компьютером и восстановления его рабочего состояния.

Нет абсолютно никаких оснований полагать, что AOMEI PXE Boot не будет работать с любым другим образом диска. Во время тестирования я смог удаленно загрузить на клиентской системе Damn Small Linux (DSL), используя загрузочный ISO-образ.

Как загрузить компьютеры с помощью ISO по локальной сети

Теперь, когда вы знаете о AOMEI PXE Boot достаточно много, пришло время увидеть, как эта штука работает. Процесс, по сути, состоит из двух этапов. Первая часть включает в себя настройку клиентского компьютера для загрузки по сети, а вторая состоит из настройки и запуска приложения на системе, действующей в качестве сервера.

Обратите внимание, что оба компьютера должны быть подключены к одной сети. В моем случае сервер был подключен к сети по беспроводному каналу, но клиентская машина была подключена проводом.

Часть 1: Настройка клиентского компьютера(ов) для сетевой загрузки

Как и предполагает название, первое, что необходимо сделать, это настроить клиентский компьютер или компьютеры для загрузки через проводную сеть. Чтобы сделать это, вам нужно получить доступ к меню BIOS компьютера. Ниже говорится о том, как это сделать (процесс более или менее такой же, независимо от производителя компьютера):

1. Включите клиентский компьютер и нажмите клавишу для доступа к меню BIOS (обычно Del, Esc, F8 или F12). В BIOS перейдите в подменю «Boot» и в разделе «Boot Options Priorities» выберите «PXE» (на некоторых компьютерах «Legacy LAN», «Realtek PXE B02 D00», «Network boot from Intel» и т.д.) в качестве первого загрузочного устройства. Вам также может потребоваться включить опцию PXE ROM, если она отключена.

2. AOMEI PXE Boot поддерживает только режим загрузки Legacy, поэтому вам также нужно отключить опцию UEFI Boot, если она поддерживается материнской платой компьютера. Эта опция может быть найдена в подменю Boot.

Это все, что нужно сделать на клиентском компьютере. Не забудьте сохранить изменения, внесенные в конфигурацию BIOS. Теперь давайте перейдем к серверу.

Часть 2: Загрузка ISO и запуск приложения на компьютере-сервере

Эта часть на самом деле еще проще. Для начала, скачайте и установите AOMEI PXE Boot (около 5 МБ) на компьютер, который будет использоваться в качестве сервера. В дополнение к этому вы также должны скачать загрузочный образ диска для загрузки клиентского компьютера или компьютеров. Шаги ниже объясняют, что от вас требуется:

1. Запустите AOMEI PXE Boot. На первом экране программы выберите опцию «Boot from custom image file» и перейдите к вашему ISO-файлу (вы также можете использовать другой вариант для загрузки Windows PE или Linux ISO с сайта компании AOMEI, если вы хотите). Когда образ будет выбран, нажмите на кнопку «Start Service», чтобы запустить службу.

2. Теперь в окне AOMEI PXE Boot будет отображаться информация об активности, происходящей на сервере и клиентских компьютерах. Больше на сервере делать ничего не нужно. Чтобы увидеть реальные действия, давайте переместимся дальше. И, само собой разумеется, приложение и, конечно, сервер, должны быть запущены.

Вам только остается запустить клиентский компьютер и дождаться, пока он загрузится по сети, используя ISO-образ, который был выбран вами через AOMEI PXE Boot на компьютере-сервере. Вот полностью рабочий дистрибутив Damn Small Linux, работающий на клиентском компьютере:

Заключительные слова

Если вы администратор сети, и ищите простой и эффективный способ (и без излишеств) для удаленного развертывания и управления ОС, AOMEI PXE Boot может быть именно тем, что вам нужно. Это качественный инструмент, который до смешного прост в настройке и работает на удивление хорошо.

Отличного Вам дня!

Сегодня автоматизируется все больше задач, для максимальной отдачи серверов все шире используют виртуализацию. Но устанавливать операционки по-прежнему приходится. Каждый делает это по-своему: у кого-то полные карманы различных образов на все случаи жизни, кто-то по старинке носит с собой «барсетку» с дисками, а то и две. Как правило, администраторы выполняют эту работу с невеликим удовольствием. Давай посмотрим, как сократить время на тривиальные задачи, как научить компьютеры устанавливать системы самостоятельно, вообще без участия админа, используя при этом только локальную сеть.

Итак, сегодня мы научимся: устанавливать Windows и Linux по сети, грузить небольшие ISO-образы, полезный софт (всяких там Касперских, Акронис, WinPE, мемтесты), разворачивать тонкие клиенты и рулить ими. Чтобы, например, бухгалтер, работающая с 1С по RDP, не прибила тебя за то, что у нее слетела винда, а отчет нужно было подготовить еще вчера… Или скупой начальник, который не хочет обновлять свой комп, восхитился твоим профессионализмом, когда увидит, как на стареньких компах летает Windows 8… В достижении наших коварных целей нам поможет сервер, предоставляющий загрузку по сети (PXE).

У любого системного администратора в заначке есть универсальный USB-диск для экстренной реанимации компьютера. Согласись, было бы куда лучше иметь ту же функциональность, используя одну лишь сетевую карту. Нельзя при этом не отметить возможность одновременной работы с несколькими узлами сразу. Итак, исходя из наших потребностей у нас есть два пути решения: использовать PXE или LTSP.

LTSP нам не очень подходит: он призван грузить по сети ОС, установленную на самом сервере, что позволяет использовать приложения сервера LTSP. Это не совсем то, что нам нужно. PXE - инструмент для загрузки компьютера по сети без использования локальных носителей данных, так же как и LTSP. PXE позволяет организовать мультизагрузочное меню загрузки, аналогичное универсальному «USB-реаниматору».


Что будем реализовывать?

Началось все с необходимости иметь под рукой инструмент для удаленной установки Ubuntu/Debian Server по сети, с возможностью загрузки Live CD маленькой системы, вроде SliTaz или Kolibri OS.
Как говорится, аппетит приходит во время еды: намеченное не успели реализовать, а к плану добавился еще ряд «хотелок». В итоге список получился весьма внушительным.

  1. Тонкие клиенты на базе Thinstation Linux.
  2. Раздел Linux.
    1. Установка Ubuntu 14.04 x86.
    2. Установка Ubuntu 14.04 x64.
    3. Установка Ubuntu 12.04 x86.
    4. Установка Ubuntu 12.04 x64.
  3. Раздел Windows.
    1. Установка Windows 2012.
    2. Установка Windows 7.
  4. Acronis.
    1. Windows PE с пакетом полезного ПО.
    2. Acronis True Image.
      1. Legacy BIOS.
      2. UEFI.
    3. Acronis Disk Director.
      1. Legacy BIOS.
      2. UEFI.
  5. Касперский Rescue v 10.
  6. ERD Commander от 5 до 8 через ISO-образ.
  7. Memtest.

Собираем все в кучу и взлетаем

В качестве дистрибутива для сервера выбор пал на Ubuntu Server 14.04.2 LTS. Можно остановиться на любой другой ОС, разница будет только в синтаксисе. Итак, приступим. Нам потребуется TFTP, DHCP (необязательно установленный на этом же сервере, в роли DHCP-сервера может выступить роутер), сервис для организации сетевой файловой системы NFS. Рассматривать будем только те настройки, которые нас интересуют в рамках темы. Первым делом установим все необходимое, предварительно сделав все обновления:

Продолжение доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все материалы на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов.

Используя Предварительную загрузку (Preboot Execution Environment (РХЕ)), вы може­те поместить загрузочные файлы в папку на другом компьютере сети, после чего загрузить ПК, используя эти файлы. Придется потрудиться, но это проще, чем загрузка с диска.

Для начала нужен рабочий компьютер с выходом в Интернет. Установите Па­кет автоматической установки Windows (Windows Automated Installation Kit (WAIK)), который можно бесплатно скачать с http://go.microsoft.com/fwlink/?LinkId=136976 . Из меню Пуск откройте Утилиты командной строки Windows РЕ (Windows РЕ Tools Command Prompt) и, если вы устанавливаете 32-битную версию Windows 7, на­берите

  • copype.cmd х8б C:\output

или, для 64-битной (х64) версии,

  • copype.cmd amd64 C:\output

и нажмите Enter. Командный файл автоматически создаст лапку C:\output. После копирования файлов наберите следующую команду для подсоединения обра­за Утилиты предварительной установки Windows (Windows Preinstallation Environment (РЕ)):

  • imagex /mountrw C:\output\winpe.wiro 1 C:\output\mount

Далее откройте Проводник Windows и создайте гюдпапку внутри c:\output, назвав ее boot Скопируйте все файлы из C:\output\mount\Windows\Boot\PXE в новую папку C:\output\boot. После этого отсоедините образ Windows РЕ:

  • imagex /unmount C:\output\mount

Скопируйте файл boot.sdi из установочной папки WAIK в папку C:\output\boot. Если вы устанавливаете 32-битную версию Windows 7, возьмите boot.sdi из C:\Program Files\Windows AIK\Tools\PETools\x86\boot, а если 64-битную (х64) версию, то возьмите его из C:\Program Files\Windows AIK\Tools\PETools\amd64\boot.

Вернитесь к окну командной строки и скопируйте файл winpe.wim в папку boot переименовав его в boot.wim:

сору C:\output\winpe.wim c:\output\boot\boot.wim

После этого остается ввести еще несколько команд для создания файла Данных конфигурации загрузки (Boot Configuration Data (BCD)), используя bcdedit.exe, ту же утилиту, которая применяется для создания двойной загрузки. Просто загрузите makebcd.bat с http://files.creativelement.com/annoyances/makebcd.bat и запустите ее на своем ПК. Чтобы скопировать и вставить GUID, щелкните правой кнопкой мыши на любой области окна командной строки, выберите Пометить (Mark), вы­делите текст в фигурных скобках, расположенный над командой, затем нажмите Enter, чтобы скопировать текст. Снова щелкните правой кнопкой мыши, выберите Вставить (Paste), чтобы вставить текст, и нажмите Enter для продолжения. Если все в порядке, появится сообщение Операция успешно выполнена (The operation completed successfully).

Последний шаг - установка серверной программы Trivial File Transfer Protocol (TFTP), например Tftp32, чтобы ком­пьютер мог подсоединиться к рабочему ПК для извлечения файлов загрузки. Уста­новите Tftp32 и запустите tftpd32.exe. Нажмите Найти (Browse), выберите папку C:/output и нажмите ОК, чтобы установить Текущий каталог (Current Directory). Далее выберите вкладку Сервер DHCP (DHCP server), нажмите Помощь (Help) и заполните поля, следуя подсказкам. В поле Загрузочный файл (Boot file) наберите boot. sdi. После этого нажмите Сохранить (Save).

После настройки сервера РХЕ необходимо активировать сетевую загрузку РХЕ в настройке BIOS вашего ПК. Вам понадобится имя хоста и IP-адрес компьютера, действующего в качестве сервера РХЕ.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: