======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-карточка не распознается, перейдите по ссылке [[http://rom-o-matic.net/|ROM-O-Matic]] =====Загрузка по сети===== SliTaz LiveCD содержит настройки для загрузки операционной системы через Интернет. Это может быть полезно при использовании более новой версии SliTaz со старого носителя. Чтобы начать сетевую загрузку, в момент вывода начального приглашения SliTaz введите команду web Только и всего! Дальнейшую информацию об использовании Интернет-соединения при загрузке SliTaz см. на [[http://boot.slitaz.org/|домашней странице сетевой загрузки 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)=== Установите файл [[http://download.tuxfamily.org/slitaz/boot/gpxe.pxe|gpxe.pxe]] (42 Кб) в качестве загрузочного, это загрузчик второй стадии. Следующие действия прошли успешную проверку на роутере [[http://openwrt.org/|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 ---- Статью перевел [[http://forum.slitaz.org/index.php/profile/1273/Cyril|Cyril]]