SliTaz GNU/Linux official and community documentation wiki.
.png
This translation is older than the original page and might be outdated. See what has changed.
Translations of this page:

PXE

 Исполнительное окружение предварительной загрузки (Preboot Execution Environment, PXE, произносится “пикси”) представляет собой процесс загрузки операционной системы по сети. Его можно сравнить с загрузкой LiveCD с удаленного CD-привода.

Данный метод загрузки требует:

  • сервер для хранения файлов, работающий по протоколам DHCP и TFTP (можно запустить каждый протокол на отдельном сервере);
  • клиент с загрузчиком PXE в BIOS. Может не иметь жесткого диска.

Шаг 1. Настраиваем сервер PXE

PXE-сервер включает:

  • DHCP-сервер для соединения с клиентами;
  • файл загрузки DHCP для настройки клиентов;
  • TFTP-сервер для загрузки операционной системы.

SliTaz LiveCD можно использовать в качестве PXE-сервера. Для этого запустите приложение Netbox (из меню Система).

  • На вкладке Statip IP нажмите Start.
    • Появится окно DHCP-сервера, который не может использовать DHCP для получения информации об IP.
  • На вкладке Server выберите вкладку INETD и удостоверьтесь, что строка tftpd в файле /etc/initd.conf не закомментирована. Это настройки по умолчанию. Нажмите Start.
    • Запустится сервер TFTP, который будет загружать SliTaz LiveCD по сети.
  • На той же вкладке Server выберите вкладку PXE.
  • Отредактируйте настройки согласно вашим опциям загрузки.
    • Этим вы автоматически обновите конфигурацию DHCP-сервера.
  • На вкладке Server выберите вкладку DHCP. Приведите настройки в соответствие с конфигурацией вашей сети. Перед этим мы добавили строки boot_file и siaddr. Нажмите Start.
    • Запустится DHCP-сервер. Если клиенты не могут получить IP-адрес, проверьте настройки этого сервера.
  • Убедитесь, что файлы bzImage и rootfs.gz находятся в директории /boot на LiveCD.

Шаг 2. Настраиваем клиент PXE

Компьютеры последних поколений со встроенной поддержкой Ethernet имеют BIOS, поддерживающий PXE. Проверьте эту опцию в меню BIOS и убедитесь, что она активирована. Для перехода в настройки BIOS понадобится нажать соответствующую клавишу после включения компьютера (например, F12).

Если ваш компьютер не поддерживает загрузку через PXE, вы можете использовать на нем SliTaz в качестве клиента. Создайте загрузочный CD-ROM или дискету утилитой Boot Floppy/CDROM в меню Система.

На вкладке PXE Network выберите Write floppy. Тем самым вы сможете загружать систему на компьютере клиента.

Если ваша Ethernet-карточка не распознается, перейдите по ссылке ROM-O-Matic

Загрузка по сети

SliTaz LiveCD содержит настройки для загрузки операционной системы через Интернет. Это может быть полезно при использовании более новой версии SliTaz со старого носителя.

Чтобы начать сетевую загрузку, в момент вывода начального приглашения SliTaz введите команду

web

Только и всего!

Дальнейшую информацию об использовании Интернет-соединения при загрузке SliTaz см. на домашней странице сетевой загрузки SliTaz.

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

PXE-загрузка без сервера DHCP

Если у вас нет устройства, которое можно приспособить под DHCP-сервер, вам все равно понадобятся IP-адрес, маска подсети, адрес шлюза и, возможно, адрес DNS.

title Slitaz Web
  kernel /boot/gpxe ip=192.168.0.12/24 gw=192.168.0.1 dns=192.168.0.1 url=http://mirror.slitaz.org/pxe/pxelinux.0

Можете изменить эту ссылку таким образом:

title Slitaz Web
  kernel /boot/gpxe ip=192.168.0.12/24 gw=192.168.0.1 dns=192.168.0.1 url=ip=192.168.0.12/24 gw=192.168.0.1
  dns=192.168.0.1 url=http://mirror.slitaz.org/pxe/pxelinux.0

При таком способе загрузки доступны исключительно следующие опции:

  • ip=
  • gw=
  • dns=
  • url=
  • nodhcp (поможет избежать ошибку таймаута по DHCP)

Дополнительная настройка процесса загрузки

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

Распределенная загрузка через PXE и PROM (предшествует PXE)

Установите файл gpxe.pxe (42 Кб) в качестве загрузочного, это загрузчик второй стадии. Следующие действия прошли успешную проверку на роутере OpenWRT:

  • установите http://mirror.slitaz.org/boot/mips/tftpd (версию mips) в /jffs/usr/sbin
  • установите gpxe.exe в /jffs/boot
  • добавьте ссылку на загрузочный файл в настройки dnsmasq
# echo "dhcp-boot=gpxe.pxe" >> /tmp/dnsmasq.conf

Запустите сервер tftp для вашей локальной сети (например, 192.168.0.1/24):

# /jffs/usr/sbin/tftpd 192.168.0.1 /jffs/boot

Изменяем домашнюю страницу GPXE-загрузки

Ссылка находится по смещению 519 и имеет длину максимум 255 байт.

  • Для вывода текущей ссылки наберите
$ dd bs=1 skip=519 count=255 if=gpxe 2> /dev/null | strings
  • Чтобы сменить ссылку:
$ echo -n "http://myurl.org/myboot" | cat - /dev/zero | dd conv=notrunc bs=1 seek=519 count=255 of=gpxe
  • Для смены ссылки и настроек IP введите команду
$ echo -n "ip=192.168.0.10/24 gw=192.168.0.1 dns=192.168.0.1 url=http://myurl.org/myboot" | cat - /dev/zero | dd
conv=notrunc bs=1 seek=519 count=255 of=gpxe
  • Чтобы удалить ссылку и вернуться к обычной загрузке GPXE, выполните:
$ dd if=/dev/zero conv=notrunc bs=1 seek=519 count=255 of=gpxe

Меняем домашнюю страницу для gpxe.exe

Ссылка находится по смещению 5 и имеет длину максимум 255 байт.

Для вывода текущей ссылки наберите

$ dd bs=1 skip=5 count=255 if=gpxe.pxe 2> /dev/null | strings

Чтобы сменить ссылку:

$ echo -n "http://myurl.org/myboot" | cat - /dev/zero | dd conv=notrunc bs=1 seek=5 count=255 of=gpxe.pxe

Чтобы удалить ссылку и вернуться к обычной загрузке gpxe.exe, выполните:

$ dd if=/dev/zero conv=notrunc bs=1 seek=5 count=255 of=gpxe.pxe

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

Ссылки можно разделять запятыми.

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

Вот пример для текущих загрузочных серверов SliTaz:

$ echo -n "http://mirror.slitaz.org/pxe/pxelinux.0,http://mirror.switch.ch/ftp/mirror/pxe/pxelinux.0,http:
download.tuxfamily.org/slitaz/pxe/pxelinux.0" | cat - /dev/zero | dd conv=notrunc bs=1 seek=519 count=255 of=gpxe

Статью перевел Cyril

 
ru/guides/pxe.txt · Last modified: 2010/12/28 12:17 by lexeii