ROS PXE boot
PXE-загрузка ReactOS
Данная статья частично является переводом официальной вики. Последнее обновление 09-12-2015
О PXE-загрузке ReactOS
В конце 2014 года в ReactOS появились полностью работоспособный RAM-диск (драйвер ramdisk.sys) и возможность PXE-загрузки по сети (на данный момент только LiveCD). С его помощью можно загружать ReactOS на компьютерах без CD/DVD дисковода. Благодаря этому появилась возможность загрузки системы на нетбуках без оптического привода и бездисковых терминалах.
Требования к компьютеру:
- возможность загрузки по PXE
- не менее 192 мегабайт оперативной памяти
Подготовка локальной сети
Для загрузки ReactOS по PXE необходимы два компьютера. Один как клиент (без диска или с пустым HDD), и другой как сервер (Windows, или Linux), и оба должны быть объединены в локальную сеть. Сервер должен запускать DHCP и TFTP сервера. Клиенту необходима сетевая карта с поддержкой PXE. Большинство сетевых карт поддерживают ее.
Образ
Образ уже содержит ReactOS LiveCD, при необходимости последний вместе с файлом freeldr можно заменить более новым отсюда.
Подготовка сервера
Windows-сервер
В случае с сервером на Windows лучше всего использовать программу TFTPD32 и образ файловой системы PXE.
Настройка TFTPD32
Содержимое папки для сетевой загрузки
Настройка IP-адреса
Общие настройки TFTPD32
Настройка роли TFTP
Настройка роли DHCP
Linux-сервер
Общая информация
Для использования на Linux сервере, может использоваться любой дистрибутив, с установленными dhcp3 и tftpd-hpa.
# Sample configuration file for ISC dhcpd for Debian # $Id: dhcpd.conf,v 1.1.1.1 2002/05/21 00:07:44 peloy Exp $ ddns-update-style none; # option definitions common to all supported networks... option domain-name "home.local"; option domain-name-servers 10.0.0.254; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. authoritative; # Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7; subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.10 10.0.0.19; option domain-name-servers myserver.home.local; option domain-name "home.local"; option routers IPofYourServer; option broadcast-address 10.0.0.255; default-lease-time 28800; # 8 hrs max-lease-time 86400; # 1 day allow bootp; host myclient { hardware ethernet 00:0F:EA:66:07:48; fixed-address myclient.home.local; filename "pxelinux.0"; server-name "myserver.home.local"; } }
Проверьте настройку xinetd/inetd для tftpd.
service tftp { disable = no log_type = SYSLOG daemon info log_on_access = PID HOST USERID EXIT DURATION socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -vv -s /path/to/tftpboot/ bind = IPofYourServer }
Настройка с использованием ALT Linux
См. статью NetInstall start на altlinux.org.
Создание содержимого TFTP-сервера
- Скачайте ISO-образ ReactOS
- Поместите его в /путь/к/TFTPBoot с именем ReactOS-LiveCD.iso
- Извлеките loader/setupldr.sys в /путь/к/TFTPBoot, и переименуйте его в freeldr.sys
- Скачайте загрузчик SysLinux 4.05 или поздней версии отсюда.
- Извлеките core/pxelinux.0 и com32/modules/chain.c32 в /путь/к/TFTPBoot
- Создайте каталог /путь/к/tftpboot/pxelinux.cfg и поместите в него файл с именем default (без расширения) со следующим содержанием:
DEFAULT chain.c32 APPEND file=freeldr.sys seg=0x0F80 keeppxe
7.Создайте /путь/к/tftpboot/freeldr.ini со следующим содержимым:
[FREELOADER] DefaultOS=LiveCD_Debug TimeOut=3 [Display] TitleText=ReactOS LiveCD StatusBarColor=Cyan StatusBarTextColor=Black BackdropTextColor=White BackdropColor=Blue BackdropFillStyle=Medium TitleBoxTextColor=White TitleBoxColor=Red MessageBoxTextColor=White MessageBoxColor=Blue MenuTextColor=Gray MenuColor=Black TextColor=Gray SelectedTextColor=Black SelectedColor=Gray ShowTime=No MenuBox=No CenterMenu=No MinimalUI=Yes TimeText=Seconds until highlighted choice will be started automatically: [Operating Systems] LiveCD="LiveCD" LiveCD_Debug="LiveCD (Debug)" LiveCD_Screen="LiveCD (Screen)" [LiveCD] BootType=Windows2003 SystemPath=ramdisk(0)\reactos Options=/MININT /RDPATH=net(0)\ReactOS-LiveCD.iso /RDEXPORTASCD [LiveCD_Debug] BootType=Windows2003 SystemPath=ramdisk(0)\reactos Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /MININT /RDPATH=net(0)\ReactOS-LiveCD.iso /RDEXPORTASCD [LiveCD_Screen] BootType=Windows2003 SystemPath=ramdisk(0)\reactos Options=/DEBUG /DEBUGPORT=SCREEN /SOS /MININT /RDPATH=net(0)\ReactOS-LiveCD.iso /RDEXPORTASCD
Загрузка
Попробуйте загрузить компьютер-клиент по PXE. Через несколько секунд загрузится ramdisk и ReactOS запустится.