ROS PXE boot — различия между версиями

Материал из Русский WINE
Перейти к: навигация, поиск
 
(не показано 17 промежуточных версии 2 участников)
Строка 1: Строка 1:
[[Category:ReactOS]]
 
 
{{TOC_right}}
 
{{TOC_right}}
 +
=PXE-загрузка ReactOS=
 +
Данная статья частично является переводом [http://www.reactos.org/wiki/Building_PXE-ready_ReactOS официальной вики]. Последнее обновление 09-12-2015
 +
----
 
==О PXE-загрузке ReactOS==
 
==О PXE-загрузке ReactOS==
 
В конце 2014 года в ReactOS появились полностью работоспособный RAM-диск (драйвер '''ramdisk.sys''') и возможность PXE-загрузки по сети (на данный момент только LiveCD).  С его помощью можно загружать ReactOS на компьютерах без CD/DVD дисковода. Благодаря этому появилась возможность загрузки системы на нетбуках без оптического привода и бездисковых терминалах.
 
В конце 2014 года в ReactOS появились полностью работоспособный RAM-диск (драйвер '''ramdisk.sys''') и возможность PXE-загрузки по сети (на данный момент только LiveCD).  С его помощью можно загружать ReactOS на компьютерах без CD/DVD дисковода. Благодаря этому появилась возможность загрузки системы на нетбуках без оптического привода и бездисковых терминалах.
  
Требования компьютера:
+
Требования к компьютеру:
*возможность загрузки по протоколу PXE
+
*возможность загрузки по PXE
 
*не менее 192 мегабайт оперативной памяти
 
*не менее 192 мегабайт оперативной памяти
 +
 
=Подготовка локальной сети=
 
=Подготовка локальной сети=
Для загрузки ReactOS по PXE необходимы два компьютера. Один как клиент (без диска или с пустым HHD), и другой как сервер (Windows, или Linux), и оба должны объединены в локальную сеть. Сервер должен запускать DHCP и TFTP сервера. Клиенту необходима сетевая карта с поддержкой PXE. Большинство сетевых карт поддерживают ее.
+
Для загрузки ReactOS по PXE необходимы два компьютера. Один как клиент (без диска или с пустым HDD), и другой как сервер (Windows, или Linux), и оба должны быть объединены в локальную сеть. Сервер должен запускать DHCP и TFTP сервера. Клиенту необходима сетевая карта с поддержкой PXE. Большинство сетевых карт поддерживают ее.
  
 
=Образ=
 
=Образ=
Образ уже содержит ReactOS LiveCD, при необходимости последний вместе с файлом freeldr можно заменить более новым [https://www.reactos.org/ru/getbuilds отсюда].
+
Образ уже содержит ReactOS LiveCD, при необходимости последний вместе с файлом freeldr можно заменить более новым [http://www.reactos.org/ru/getbuilds отсюда].
*[https://yadi.sk/d/La_RK8LxdjAyL Скачать]
+
*[http://yadi.sk/d/La_RK8LxdjAyL Скачать]
 
=Подготовка сервера=
 
=Подготовка сервера=
 
==Windows-сервер==
 
==Windows-сервер==
Строка 19: Строка 22:
 
====Содержимое папки для сетевой загрузки====
 
====Содержимое папки для сетевой загрузки====
 
<center>[[Файл:Reactospxe1.png]]</center>
 
<center>[[Файл:Reactospxe1.png]]</center>
 +
 
====Настройка IP-адреса====
 
====Настройка IP-адреса====
<center>[[Файл:Reactospxe2.png]]</center>
+
<center>[[Файл:Reactospxe2.png|350px]]</center>
 
====Общие настройки TFTPD32====
 
====Общие настройки TFTPD32====
<center>[[Файл:Reactospxe3.png]]</center>
+
<center>[[Файл:Reactospxe3.png|750px]]</center>
 
====Настройка роли TFTP====
 
====Настройка роли TFTP====
<center>[[Файл:Reactospxe4.png]]</center>
+
<center>[[Файл:Reactospxe4.png|350px]]</center>
 
====Настройка роли DHCP====
 
====Настройка роли DHCP====
<center>[[Файл:Reactospxe5.png]]</center>
+
<center>[[Файл:Reactospxe5.png|350px]]</center>
 
==Linux-сервер==
 
==Linux-сервер==
 +
===Общая информация===
 
Для использования на Linux сервере, может использоваться любой дистрибутив, с установленными '''dhcp3''' и '''tftpd-hpa'''.
 
Для использования на Linux сервере, может использоваться любой дистрибутив, с установленными '''dhcp3''' и '''tftpd-hpa'''.
  
{|class="transparent"
 
|
 
 
<pre>
 
<pre>
 
# Sample configuration file for ISC dhcpd for Debian
 
# Sample configuration file for ISC dhcpd for Debian
Строка 55: Строка 58:
 
         max-lease-time 86400; # 1 day
 
         max-lease-time 86400; # 1 day
 
         allow bootp;
 
         allow bootp;
</pre>
 
  
{|class="transparent"
 
|
 
<pre>
 
 
  host myclient
 
  host myclient
 
         {
 
         {
Строка 71: Строка 70:
  
 
Проверьте настройку xinetd/inetd для tftpd.
 
Проверьте настройку xinetd/inetd для tftpd.
{|class="transparent"
+
 
|
+
 
<pre>
 
<pre>
 
service tftp
 
service tftp
Строка 88: Строка 86:
 
}
 
}
 
</pre>
 
</pre>
 +
 +
===Настройка с использованием ALT Linux===
 +
См. статью [https://www.altlinux.org/NetInstall_start NetInstall start] на altlinux.org.
 +
 
=Создание содержимого TFTP-сервера=
 
=Создание содержимого TFTP-сервера=
 
#Скачайте ISO-образ ReactOS
 
#Скачайте ISO-образ ReactOS
 
#Поместите его в ''/путь/к/TFTPBoot'' с именем ''ReactOS-LiveCD.iso''
 
#Поместите его в ''/путь/к/TFTPBoot'' с именем ''ReactOS-LiveCD.iso''
 
#Извлеките  ''loader/setupldr.sys'' в ''/путь/к/TFTPBoot'', и переименуйте его в ''freeldr.sys''
 
#Извлеките  ''loader/setupldr.sys'' в ''/путь/к/TFTPBoot'', и переименуйте его в ''freeldr.sys''
#Скачайте загрузчик SysLinux 4.05 или поздней версии [https://www.kernel.org/pub/linux/utils/boot/syslinux/ отсюда].
+
#Скачайте загрузчик SysLinux 4.05 или поздней версии [http://www.kernel.org/pub/linux/utils/boot/syslinux/ отсюда].
 
#Извлеките ''core/pxelinux.0'' и ''com32/modules/chain.c32'' в ''/путь/к/TFTPBoot''
 
#Извлеките ''core/pxelinux.0'' и ''com32/modules/chain.c32'' в ''/путь/к/TFTPBoot''
 
#Создайте каталог ''/путь/к/tftpboot/pxelinux.cfg'' и поместите в него файл с именем '''''default''''' (без расширения) со следующим содержанием:
 
#Создайте каталог ''/путь/к/tftpboot/pxelinux.cfg'' и поместите в него файл с именем '''''default''''' (без расширения) со следующим содержанием:
  
{|class="transparent"
 
|
 
 
<pre>
 
<pre>
 
DEFAULT chain.c32
 
DEFAULT chain.c32
APPEND файл = freeldr.sys SEG = 0x0F80 keeppxe
+
APPEND file=freeldr.sys seg=0x0F80 keeppxe
 
</pre>
 
</pre>
7.Создайте /путь/к/tftpboot/freeldr.ini со следующим содержимым:
+
7.Создайте ''/путь/к/tftpboot/freeldr.ini'' со следующим содержимым:
  
{|class="transparent"
 
|
 
 
<pre>
 
<pre>
 
[FREELOADER]
 
[FREELOADER]
 
DefaultOS=LiveCD_Debug
 
DefaultOS=LiveCD_Debug
 
TimeOut=3
 
TimeOut=3
</pre>
 
  
{|class="transparent"
 
|
 
<pre>
 
 
[Display]
 
[Display]
 
TitleText=ReactOS LiveCD
 
TitleText=ReactOS LiveCD
Строка 136: Строка 130:
 
MinimalUI=Yes
 
MinimalUI=Yes
 
TimeText=Seconds until highlighted choice will be started automatically:
 
TimeText=Seconds until highlighted choice will be started automatically:
</pre>
 
  
{|class="transparent"
 
|
 
<pre>
 
 
[Operating Systems]
 
[Operating Systems]
 
LiveCD="LiveCD"
 
LiveCD="LiveCD"
 
LiveCD_Debug="LiveCD (Debug)"
 
LiveCD_Debug="LiveCD (Debug)"
 
LiveCD_Screen="LiveCD (Screen)"
 
LiveCD_Screen="LiveCD (Screen)"
</pre>
 
  
{|class="transparent"
 
|
 
<pre>
 
 
[LiveCD]
 
[LiveCD]
 
BootType=Windows2003
 
BootType=Windows2003
 
SystemPath=ramdisk(0)\reactos
 
SystemPath=ramdisk(0)\reactos
 
Options=/MININT /RDPATH=net(0)\ReactOS-LiveCD.iso /RDEXPORTASCD
 
Options=/MININT /RDPATH=net(0)\ReactOS-LiveCD.iso /RDEXPORTASCD
</pre>
 
  
{|class="transparent"
 
|
 
<pre>
 
 
[LiveCD_Debug]
 
[LiveCD_Debug]
 
BootType=Windows2003
 
BootType=Windows2003
 
SystemPath=ramdisk(0)\reactos
 
SystemPath=ramdisk(0)\reactos
 
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /MININT /RDPATH=net(0)\ReactOS-LiveCD.iso /RDEXPORTASCD
 
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /MININT /RDPATH=net(0)\ReactOS-LiveCD.iso /RDEXPORTASCD
</pre>
 
  
{|class="transparent"
 
|
 
<pre>
 
 
[LiveCD_Screen]
 
[LiveCD_Screen]
 
BootType=Windows2003
 
BootType=Windows2003
Строка 173: Строка 151:
 
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /MININT /RDPATH=net(0)\ReactOS-LiveCD.iso /RDEXPORTASCD
 
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /MININT /RDPATH=net(0)\ReactOS-LiveCD.iso /RDEXPORTASCD
 
</pre>
 
</pre>
 +
 +
=Загрузка=
 +
Попробуйте загрузить компьютер-клиент по PXE. Через несколько секунд загрузится ramdisk и ReactOS запустится.
  
 
=Ссылки=
 
=Ссылки=
 
*[http://youtu.be/5ycbPb4KgY8 Демонстрация загрузки ReactOS по PXE]
 
*[http://youtu.be/5ycbPb4KgY8 Демонстрация загрузки ReactOS по PXE]
 +
 +
=См. также=
 +
*[[RAM from HD|RAM-загрузка ReactOS с жесткого диска]]
 +
[[Категория:Переводы официальной вики]]
 
{{ReactOS}}
 
{{ReactOS}}

Текущая версия на 11:55, 1 мая 2024

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

Содержимое папки для сетевой загрузки

Reactospxe1.png

Настройка IP-адреса

Reactospxe2.png

Общие настройки TFTPD32

Reactospxe3.png

Настройка роли TFTP

Reactospxe4.png

Настройка роли DHCP

Reactospxe5.png

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-сервера

  1. Скачайте ISO-образ ReactOS
  2. Поместите его в /путь/к/TFTPBoot с именем ReactOS-LiveCD.iso
  3. Извлеките loader/setupldr.sys в /путь/к/TFTPBoot, и переименуйте его в freeldr.sys
  4. Скачайте загрузчик SysLinux 4.05 или поздней версии отсюда.
  5. Извлеките core/pxelinux.0 и com32/modules/chain.c32 в /путь/к/TFTPBoot
  6. Создайте каталог /путь/к/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 запустится.

Ссылки

См. также

ReactOS
Search.png
Доклады
О ReactOSARWINSSЧеЗа
Информация Новости Выпуски новостейПереводы блоговНовости проектаВидеоReactOS на ХабреUSB от Вадима Галянта
Разработка Руководство по программированиюОтсутствующая функциональностьВетви разработкиКомпоненты системыReactOS и WineПлан работRoadmap ядра by VgalРазработчикиСовместимость с dll WindowsНаиболее значимые изменения за годИспользуемые проектыGoogle Summer of CodeИзвестные проблемы
Порты AMD64ARMXboxPowerPC
Компоненты Файловые системыРежим совместимостиОтчеты об ошибкахПечатьUSBЯдро
Загрузчик Восстановление MBRЗагрузка из GRUBПараметры загрузки
Прочее ARWINSSПриложения в ReactOSОформление ReactOSКоординаторы"Пасхальные яйца"Монетизация
Другое Типы ядерFreeWin95
Помощь
RAM-диск ReactOS по PXEс жесткого диска
Разработка Стиль написания кодаСтандарты RC-файловРабота с документациейВенгерская нотацияGNU Indent • [ Subversion : ветвислияниеиспользование TortoiseSVN ] • Основы переводаОтправка патчей
Репорты Отладка в VirtualBoxОтладка на экранДобавление программы в менеджер приложенийОтправка отчетов
Отладка Com0comGDBKdbgRossym.gdbRoswin.gdbWinDBGРуководство по WinDBGВключение трассировки ядраКоды DPRINTУдалённый отладчик ReactOS
Сборка CMakeRBuildФайлы RBuildАвтоматическое копирование файловСборка MINGW-w64Сборка модулейСреда сборки
Тестирование VirtualBoxVMwareQEMUHyper-VНеобходимый объём дискаПеренос файлов на виртуальный дискУстановка ReactOSУстановка драйверов
Сеть Общие папкиSambaNFS
Игры Установка DirectPlay
Обновление ReactOSЗагрузочная флешкаЧем можно помочь проектуСоздание нового пользователяЗвук и сеть в VirtualBoxСъемка и публикация видеоIRC-каналСторонние компонентыFAQReactOS как рабочая станцияReactOS и UEFI
Обзоры ОболочкаNTVDMWOWCommunity EditionИстория сайтаReactOS ServerКриптографияПО времен XP