PXE — грузим все! Мультизагрузка по локальной сети, часть 2

Если вы сталкивались с инструкциями в которых необходимо «поднимать» активдиректори и доменкотроллер, монтировать диски через определённые утилиты и долго шаманить над созданием текстовых файлов, перепечатывая текст с монитора, то представляю вам более простой вариант реализации. Тот кто пользовался этой инструкцией дали пару рекомендаций о подаче информации и думаю, что теперь она вылизана как никогда чётко и красиво.

Описание

Tftpd32 — это бесплатное приложение с открытым исходным кодом, которое включает в себя серверы DHCP, TFTP, DNS, SNTP и Syslog, а также TFTP-клиента. TFTP-клиент и сервер полностью совместимы с поддержкой опций TFTP (tsize, blocksize и timeout), которые позволяют максимально производительность при передаче данных. Некоторые расширенные функции, такие как средство каталогов, настройка безопасности, фильтрация интерфейса; Индикаторы выполнения и ранние подтверждения повышают полезность и пропускную способность протокола TFTP как для клиента, так и для сервера. Включенный сервер DHCP обеспечивает неограниченное автоматическое или статическое назначение IP-адресов. … Больше информации "

Основная информация о программе

TFTP-клиент и сервер совместимы с поддержкой опций TFTP, которые позволяют предавать данные на очень высоких скоростях.

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

Также стоит отметить, что включенный в программу Tftpd32 сервер DHCP обеспечивает возможность автоматического или статического назначения IP-адреса.

Проверка работы TFTP сервера, использование TFTP клиента

Для начала установим TFTP клиент, чтобы можно было подключаться к TFTP северу. Для установки TFTP клиента выполните в терминале команду:

Sudo apt-get install tftp

Теперь создадим на сервере в директории /tftpboot какой-нибудь файл, например, myfile. Для создания файла myfile и записи в него текста «This is my file» выполните в терминале команду:

Echo This is my file > /tftpboot/myfile

Теперь мы можем запустить TFTP клиент командой tftp. Команда tftp принимает в качестве параметра IP адрес сервера. Если вы запускаете клиент на локальном компьютере, то укажите IP адрес 127.0.0.1, если же на удаленном компьютере, то укажите IP адрес сервера.

Tftp 127.0.0.1

Когда клиент запустится, вы попадете в режим ввода команд для клиента TFTP. Выполните команду get myfile, которая означает получить файл с именем myfile с сервера.

Tftp> get myfile

Читайте также:  Языковая панель на ПК Windows 7 не отображается

В случае, если вы все сделали правильно, файл myfile загрузится с TFTP сервера. Для выхода из TFTP клиента введите команду quit.

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

Установка Windows по сети pxe

Если ОС Виндовс 10 используется в небольшой организации, для упрощения установки её на несколько компьютеров можно использовать методику инсталляции по сети, с которой мы и хотим вас сегодня познакомить.

Установка Windows по сети

Установка Windows по сети – грозный набор слов, от которых у вас, наверняка, в зобу дыхание сперло. Мы уже успели изучить всевозможные способы установки любой системы семейства Windows, за исключением лишь VISTA. Эта система по вполне понятным причинам не прижилась в нашем мире, но сейчас не об этом.

Для чего же человечество используется такой метод инсталляции. Установка Windows по сети используется в тех случаях, когда один из компов, по тем или иным причинам, обделен USB-портов, а так же дисководом.

Установка Windows по сети pxe

То есть в нем нет места для сменного носителя с записанным образом винды. В качестве альтернативы можно выбрать массу методов, к примеру, самый простой – пойти и купить необходимые USB-модули.

Но мы пойдем по сложному пути, будем переустанавливать винду по локальной сети.

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

Как только на материнскую плату будет подано питание, сетевая карта получит свой личный IP-адрес, так же в работу включится стандарт PXE. IP-ник выдается DHC-сервером, а затем этот адрес передается и TFTP-серверу.

Подготовка Windows PE

Но существует обходной путь. Мы воспользуемся небольшой операционной системой WindowsPE, которая будет служить оболочкой для запуска установочной программы. WindowsPE является полнофункциональной системой. В ней доступно подключение по сети к SMB-ресурсам, есть графический интерфейс и возможность писать командные файлы, под ней можно запускать программы написанные для ОС Windows. Больше всего меня интересует возможность работать с SMB, так как это нас раскрепощает по скорости скачивания и уменьшает объём скачиваемой информации. Уменьшение объёма произойдёт из-за того, что мы будем использовать лишь несколько реально необходимых файлов из распакованного образа, а не огромный файл.

Продолжаем. Для дальнейшей работы нам необходимо найти чистый образ

. Лучше его не скачивать со сторонних сайтов. Мало ли, кто туда заразу подсунет. Надо идти проторённым и официальным путём. Заходим на сайт Майкрософта и скачиваем образ Windows AIK. Он распространяется в виде ISO-образа, который необходимо смонтировать в систему. У Windows 10 ISO-образы монтируются прямо средствами операционной системы. Находим внутри .

Внутри

Читайте также:  Пропал рабочий стол в виндовс 10 как вернуть?

находится два файла:F1_ иF3_ .

Подготовка Windows PE

С этого момента необходимо определиться с разрядностью операционной системы. В F1_

расположена 32-разрядная система, а вF3_ — 64-разрядная система. Так как подавляющее большинство офисных компьютеров оснащается четырьмя гигабатами оперативной памяти, а процессоры поддерживают 64-бита с незапамятных времён, то рекомендую остановиться именно на 64-битной системе.

Создадим каталог Boot

в корневой папке вашего TFTP-сервера. Скопируем туда понравившийся файл и переименуем его .

Теперь из

нужно извлечь несколько файлов и положить их в определённые каталоги. Для доступа к внутренностям этого файла можно использовать архиватор 7-zip или Far manager. Лично я пользуюсь Far и не замечаю разницы между файловой системой и внутренностями архива. Чтобы открыть wim-архив необходимо выделить его курсором и нажатьCrtl+PageDown .

Приведу таблицу размещения файлов для правильного копирования. В левой табличке каталог вашего TFTP-сервера и название файла, а в правой файл из архива

. Обратите внимание на то, что придётся переименовать, так как это одна из особенностей загрузки файлов с использованием PXElinux.

TFTP файл WIM файлы
\pxeboot.0 Windows\Boot\PXE\
\ Windows\Boot\PXE\
\Boot\Fonts\wgl4_ Windows\Boot\Fonts\wgl4_
\ Создать пустой файл.
\Boot\ Скопировать сам архив .

Но этого не достаточно для работы. Нужно еще сформировать BCD-файл, который является заменой

в операционных системах Windows Vista и выше. Для его формирования необходимо выполнить несколько команд с правами администратора.

Подготовка Windows PE

Чтобы долго не печатать, создайте командный файл

и скопируйте в него следующий текст. bcdedit -createstore %1\BCD bcdedit -store %1\BCD -create {ramdiskoptions} /d «Ramdisk options» bcdedit -store %1\BCD -set {ramdiskoptions} ramdisksdidevice boot bcdedit -store %1\BCD -set {ramdiskoptions} ramdisksdipath \boot\ for /F «tokens=2 delims={}» %%i in (‘bcdedit -store %1\BCD -create /d « Boot Image» /application osloader’) do set guid={%%i} bcdedit -store %1\BCD -set %guid% systemroot \Windows bcdedit -store %1\BCD -set %guid% detecthal Yes bcdedit -store %1\BCD -set %guid% winpe Yes bcdedit -store %1\BCD -set %guid% osdevice ramdisk=[boot]\Boot\,{ramdiskoptions} bcdedit -store %1\BCD -set %guid% device ramdisk=[boot]\Boot\,{ramdiskoptions} bcdedit -store %1\BCD -create {bootmgr} /d «Windows BootManager» bcdedit -store %1\BCD -set {bootmgr} timeout 1 bcdedit -store %1\BCD -set {bootmgr} displayorder %guid% Так как при создании BCD будет несколько файлов, то создайте каталог, например, C:\pxe\

. Скопируйте . Запустите командную строку от имени администратора и дайте команду. C:\pxe\ c:\pxe Из сгенерированных файлов нам понадобится только два: BCD

. Оба файла необходимо скопировать на наш TFTP-сервер в каталог\Boot\ .

На этом моменте всё готово для запуска нашей сетевой операционной системы. Но это лишь запуск Windows PE. А как на счёт запуска установки операционных систем? Для этого придётся откорректировать образ

Подключение папки FTP-ресурса сетевым диском в ОС Windows

Многим пользователям удобнее работать с обычным диском системы, который отображается в проводнике. Сторонние программы для работы с дисками приветствуют не все. Чтобы получить такой диск, нужно смонтировать папку FTP и ассоциировать её с логическим диском. Сделать это можно двумя способами:

  • через «Проводник»;
  • через специальную консольную утилиту ftpuse.

Монтирование FTP-ресурса с помощью «Проводника» Windows

  1. Из контекстного меню апплета «Мой компьютер», расположенного на рабочем столе, выполните команду «Подключить сетевой диск». Зайдите в мастер подключения сетевых дисков
  2. Кликните «Подключение к сайту, на котором можно хранить документы и изображения». Для перехода к монтированию вашего сервера кликните «Подключение к сайту, на котором можно хранить документ и изображения»
  3. Введите адрес FTP-сервера, который хотите смонтировать в качестве диска. Это может быть как доменное имя, так и IP-адрес с указанием порта. Значение порта нужно прописать, если сервер настроен на работу с портом, отличным от 21-го. Введитте адрес сервера для монтирования диска
  4. При первом подключении к созданному диску операционная система запросит пароль — введите его, не забыв активировать чекбокс «сохранить пароль», чтобы в следующий раз подключение происходило автоматически. Также деактивируйте чекбокс «Анонимный вход». Введите имя пользователя и пароль для доступа к серверу FTP
Читайте также:  Как правильно делать бэкапы и следить за ними

Монтирование FTP-ресурса при помощи консольной утилиты ftpuse

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

Распространяется ftpuse совершенно бесплатно. После скачивания и установки утилита доступна из любого открытого окна командного процессора. Чтобы сетевой диск оставался подключённым даже после закрытия такого окна, утилиту нужно использовать совместно с программой PowerShell. После установки утилиты она доступна из командной строки или процессора PowerShell.

При помощи утилиты ftpuse вы сможете настроить консольный доступ к FTP-серверу, как к сетевому диску

Процессор PowerShell является частью ОС начиная с Windows 7 SP1. Если у вас не установлен сервис-пак, установочный файл командного процессора придётся загрузить с сайта Microsoft.

Таблица: команды утилиты ftpuse, позволяющие настроить доступ к ресурсу FTP

devicename Задаёт имя логического диска, под которым сетевой ресурс будет смонтирован в ОС.
ftphostname Задаёт имя или адрес сервера, к которому надо подключиться.
remotepath Сетевая папка, которая будет использована корневым каталогом смонтированного логического диска.
password Задаёт пароль доступа.
/user Имя пользователя, который подключается к серверу.
/nopassive Устанавливает активный режим работы.
/owneraccessonly Сетевой диск виден только той программе, из которой запущена утилита ftpuse.
/port Можно задать произвольный адрес порта TCP, используемый для обмена данными с сервером. По умолчанию это порт 21.
/hide Запускает утилиту в фоне, на экран не выводятся никакие сообщения.
/debug Работа утилиты в режиме отладки.
/delete Удаляет текущую сессию, отключается от сервера и размонтирует диск.

Примеры работы утилиты ftpuse

Приведём несколько примеров использования команд ftpuse для настройки сервера в качестве локального диска:

  • ftpuse F: — так мы создаём в системе логический диск F:, ассоциированный с ftp-сервером ;
  • ftpuse F: /USER:junkers 1944 — авторизованного пользователя junkers с паролем 1944 подключаем к серверу ;
  • ftpuse F: /delete — отключаем диск F: и отсоединяемся от сервера.

FTP-ресурс, подключённый при помощи утилиты ftpuse, всегда будет отображаться в проводнике с объёмом диска в один гигабайт. Это не ошибка, а особенность работы утилиты. Впрочем, диск, подключённый средствами проводника, вообще не будет отображать свой объем.