Поиск по сайту:

Сетевой установщик «Debian 7 (Wheezy) на клиентских машинах с использованием сервера сетевой загрузки DNSMASQ»


Этот учебник покажет вам, как можно установить Debian 7 (Wheezy) напрямую с сетевого ресурса, используя DNSMASQ как PXE сервер (Preboot eXecution Environment), в случае если ваш сервер не предоставляет метод загрузки с CD/DVD/USB-носителя или он может работать только с подключённым монитором, клавиатурой и мышью.

Сетевая установка Debian 7 на клиентских машинах

DNSMASQ — это облегчённый сервер сетевой инфраструктуры, который может предоставлять важные сетевые службы, такие как DNS, DHCP и сетевую загрузку, используя встроенные DNS, DHCP и TFTP серверы.

Как только PXE-сервер будет запущен и работоспособен, вы можете настроить все ваши клиентские устройства на прямую загрузку с сети, при условии, что ваши клиенты обладают сетевой картой, поддерживающей сетевую загрузку, которую можно включить в BIOS в разделе Network Boot или Boot Services.

Требования

  1. Руководство по установке Debian 7 (Wheezy)

Шаг 1: Установите и настройте сервер DNSMASQ

1. Сначала, после установки сервера Debian убедитесь, что ваша система использует Статический IP-адрес, потому что, помимо загрузки по сети, она также будет предоставлять службу DHCP для всего сегмента вашей сети. После настройки статического IP-адреса выполните следующую команду от имени root или используя пользователя с правами root для установки сервера DNSMASQ.

# apt-get install dnsmasq

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

2. После установки пакета DNSMASQ вы можете начать редактирование его конфигурационного файла. Сначала создайте резервную копию основного конфигурационного файла, а затем начните редактировать файл dnsmasq.conf, выполнив следующие команды.

# mv /etc/dnsmasq.conf  /etc/dnsmasq.conf.backup
# nano /etc/dnsmasq.conf

Резервное копирование конфигурации Dnsmasq

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

interface=eth0
domain=debian.lan
dhcp-range=192.168.1.3,192.168.1.253,255.255.255.0,1h
dhcp-boot=pxelinux.0,pxeserver,192.168.1.100
pxe-prompt="Press F8 for menu.", 60
#pxe-service types: x86PC, PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI
pxe-service=x86PC, "Install Debian 7 Linux from network server 192.168.1.100", pxelinux
enable-tftp
tftp-root=/srv/tftp

Конфигурация Dnsmasq
  1. интерфейс - Сетевой интерфейс, на котором сервер должен прослушивать.
  2. домен - Замените его на ваше доменное имя.
  3. dhcp-range - Замените это на диапазон IP вашей сети, определённый вашей сетевой маской.
  4. dhcp-boot - Оставьте значение по умолчанию, но замените оператор IP на IP-адрес вашего сервера.
  5. pxe-prompt - оставить по умолчанию - требует нажатия клавиши F8, чтобы войти в меню 60 с таймером ожидания в секундах.
  6. pxe=service - Используйте x86PC для 32-битных/64-битных архитектур и введите подсказку описания меню в кавычках. Другие типы значений могут быть: PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI и X86-64_EFI.
  7. enable-tftp - Включает встроенный TFTP-сервер.
  8. tftp-root - Используйте /srv/tftp как местоположение файлов netboot для Debian.

Шаг 2: Скачать файлы Debian Netboot и открыть соединение через брандмауэр

4. Теперь пришло время скачать файлы загрузки Debian по сети. Сначала измените путь текущего рабочего каталога на расположение TFTP Root, указанное в последнем операторе конфигурации (/srv/tftp системный путь).

Перейдите на официальную зеркальную страницу Debian Netinstall - раздел сетевой загрузки и скачайте следующие файлы в зависимости от архитектуры вашей системы, на которой вы хотите установить её на ваши клиенты.

После того как вы скачаете файл netboot.tar.gz, распакуйте архив сразу же (эта процедура описана только для 64-битной системы, но та же процедура применима и к другим архитектурам системы).

# cd /srv/tftp/
# wget http://ftp.nl.debian.org/debian/dists/wheezy/main/installer-amd64/current/images/netboot/netboot.tar.gz
# tar xfz netboot.tar.gz
# wget http://ftp.nl.debian.org/debian/dists/wheezy/main/installer-amd64/current/images/SHA256SUMS
# wget http://ftp.nl.debian.org/debian/dists/wheezy/Release
# wget http://ftp.nl.debian.org/debian/dists/wheezy/Release.gpg

Также может понадобиться сделать все файлы в каталоге TFTP доступными для чтения сервером TFTP.

# chmod -R 755 /srv/tftp/

Загрузить файлы NetBoot для Debian

Используйте следующие переменные для зеркал и архитектур Debian Netinstall.

# wget http://"$YOURMIRROR"/debian/dists/wheezy/main/installer-"$ARCH"/current/images/netboot/netboot.tar.gz
# wget http://"$YOURMIRROR"/debian/dists/wheezy/main/installer-"$ARCH"/current/images/SHA256SUMS
# wget http://"$YOURMIRROR"/debian/dists/wheezy/Release
# wget http://"$YOURMIRROR"/debian/dists/wheezy/Release.gpg

5. На следующем шаге запустите или перезапустите демон DNSMASQ и выполните команду netstat, чтобы получить список портов, на которых сервер прослушивает соединения.

# service dnsmasq restart
# netstat -tulpn | grep dnsmasq

Запустить службу Dnsmasq

6. Дистрибутив на базе Debian обычно поставляется с пакетом UFW Firewall. Используйте следующие команды, чтобы открыть необходимые порты DNSMASQ: 67 (Bootps), 69 (TFTP), 53 (DNS), 4011 (proxyDHCP) UDP и 53 TCP (DNS).

# ufw allow 69/udp
# ufw allow 4011/udp   ## Only if you have a ProxyDHCP on the network
# ufw allow 67/udp
# ufw allow 53/tcp
# ufw allow 53/udp

Открыть порты Dnsmasq

Теперь загрузчик PXE, расположенный на сетевом интерфейсе вашего клиента, будет загружать конфигурационные файлы pxelinux из каталога /srv/tftp/pxelinux.cfg в следующем порядке.

  1. Файлы GUID
  2. Файлы MAC
  3. Файл по умолчанию

Шаг 3: Настройка клиентов для загрузки по сети

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

Перейдите в Меню загрузки и выберите Сетевую загрузку в качестве основного загрузочного устройства (на некоторых системах можно выбрать загрузочное устройство без входа в BIOS, просто нажав клавишу во время POST BIOS).

Выберите настройки BIOS

8. После редактирования последовательности загрузки обычно нажимайте F10 для сохранения настроек BIOS. После перезагрузки ваш клиентский компьютер должен загружаться напрямую с сети, и должно появиться первое PXE сообщение с требованием нажать клавишу F8 для входа в меню.

Далее нажмите клавишу F8, чтобы двигаться вперёд, и должен появиться новый запрос. Снова нажмите клавишу Enter, и основной запрос Debian Installer должен появиться на вашем экране, как показано на скриншотах ниже.

Выбор загрузочного меню

Выберите загрузку установщика Debian

Выберите установку Debian

С этого момента вы можете начать установку Debian на вашу машину, используя процедуру Debian 7 Wheezy (ссылка на установку приведена выше), но вам также нужно убедиться, что на вашей машине есть активное подключение к Интернету, чтобы иметь возможность завершить процесс установки.

Шаг 4: Отладка сервера DNSMASQ и включение его для всей системы

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

# tailf /var/log/daemon.log

Отладка сервера DNSMASQ

10. Если во время тестирования сервера все в порядке, вы теперь можете включить демон DNSMASQ, чтобы он автоматически запускался после перезагрузки системы с помощью пакета sysv-rc-conf.

# apt-get install sysv-rc-conf
# sysv-rc-conf dnsmaq on

Включить демон DNSMASQ

Вот и всё! Теперь ваш PXE сервер готов выделять IP-адреса (DHCP) и предоставлять необходимую информацию для загрузки всем клиентам вашей сетевой сегментации, которые будут настроены для загрузки и установки Debian Wheezy через сеть.

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