Difference between revisions of "Building PXE-ready ReactOS"

From ReactOS Wiki
Jump to: navigation, search
(Prepare LAN)
(Prepare LAN)
Line 11: Line 11:
 
Both have to be connected to the local network.
 
Both have to be connected to the local network.
  
The server must running a DHCP-server and a TFTP-server.
+
The server must running a DHCP-server and a TFTP-server. Additionally we need a pxe-client: pxelinux.
 
The client need a pxe-ready network card. Most onboard network card are capable.
 
The client need a pxe-ready network card. Most onboard network card are capable.
  
Line 65: Line 65:
 
         bind            = 10.0.0.254
 
         bind            = 10.0.0.254
 
  }
 
  }
 +
 +
Pxelinux config in /srv/tftp/pxelinux.0
 +
 +
DEFAULT vesamenu.c32
 +
MENU BACKGROUND bootscreen.png
 +
 +
PROMPT 0
 +
NOESCAPE 1
 +
TIMEOUT 200
 +
MENU WIDTH 45
 +
MENU MARGIN 9
 +
MENU PASSWORDMARGIN 9
 +
MENU ROWS 14
 +
MENU TABMSGROW 25
 +
MENU CMDLINEROW 18
 +
MENU ENDROW 25
 +
MENU PASSWORDROW 18
 +
MENU TIMEOUTROW 24
 +
MENU HSHIFT 1
 +
MENU VSHIFT 5
 +
 +
menu color screen 37;40 #80ffffff #00000000 std
 +
menu color border 37;40 #40000000 #ff8093a1 std
 +
menu color title 1;37;40 #ffff8b00 #ff8093a1 std
 +
menu color unsel 37;40 #fff0f0f0 #ff8093a1 std
 +
menu color hotkey 1;37;40 #ffff8b00 #ff8093a1 std
 +
menu color sel 7;37;40 #ff1c2a33 #667799bb all
 +
menu color hotsel 1;7;37;40 #ffff8b00 #667799bb all
 +
menu color scrollbar 37;40 #40000000 #ee000000 std
 +
menu color tabmsg 37;40 #ffff8b00 #ff8093a1 std
 +
menu color cmdmark 1;37;40 #ffff8b00 #ff8093a1 std
 +
menu color cmdline 37;40 #fff0f0f0 #ff8093a1 std
 +
menu color pwdborder 37;40 #40000000 #ff8093a1 std
 +
menu color pwdheader 37;40 #ffff8b00 #ff8093a1 std
 +
menu color pwdentry 37;40 #ffff8b00 #ff8093a1 std
 +
menu color timeout_msg 37;40 #afac2a33 #00000000 none
 +
menu color timeout 1;37;40 #ffff8b00 #00000000 std
 +
menu color help 37;40 #ff1c2a33 #00000000 none
 +
menu color msg07 37;40 #90ffffff #00000000 std
 +
 +
MENU AUTOBOOT Selection starts in # seconds
 +
 +
MENU TITLE Menu
 +
 +
label harddisk
 +
        localboot 0x80
 +
        MENU DEFAULT
 +
 +
label mdisk ROS live
 +
        kernel kernel/memdisk
 +
        append iso bigraw initrd=bootimages/ros-live.iso
 +
 +
label pxelinux
 +
        kernel pxelinux.0
 +
  
  

Revision as of 11:14, 25 February 2010

This is a stub. It's conscious unlinked. Please do not remove/delete.

Get Driver

tbd

Prepare RosBe

tbd

Prepare LAN

For this scenario we need two computer. One client (may be diskless or empty HDD), one server (Windows or better Linux). Both have to be connected to the local network.

The server must running a DHCP-server and a TFTP-server. Additionally we need a pxe-client: pxelinux. The client need a pxe-ready network card. Most onboard network card are capable.

The Linux way

I used dhcp3 and tftpd-hpa. Use youre favorite Linux and install them. I used Bind at home, but you can leave that out.

# 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 10.0.0.254;
        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";
        }
}

Check if present, xinetd/inetd config for 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 /srv/tftp/
        bind            = 10.0.0.254
}

Pxelinux config in /srv/tftp/pxelinux.0

DEFAULT vesamenu.c32
MENU BACKGROUND bootscreen.png

PROMPT 0
NOESCAPE 1
TIMEOUT 200
MENU WIDTH 45
MENU MARGIN 9
MENU PASSWORDMARGIN 9
MENU ROWS 14
MENU TABMSGROW 25
MENU CMDLINEROW 18
MENU ENDROW 25
MENU PASSWORDROW 18
MENU TIMEOUTROW 24
MENU HSHIFT 1
MENU VSHIFT 5

menu color screen 37;40 #80ffffff #00000000 std
menu color border 37;40 #40000000 #ff8093a1 std
menu color title 1;37;40 #ffff8b00 #ff8093a1 std
menu color unsel 37;40 #fff0f0f0 #ff8093a1 std
menu color hotkey 1;37;40 #ffff8b00 #ff8093a1 std
menu color sel 7;37;40 #ff1c2a33 #667799bb all
menu color hotsel 1;7;37;40 #ffff8b00 #667799bb all
menu color scrollbar 37;40 #40000000 #ee000000 std
menu color tabmsg 37;40 #ffff8b00 #ff8093a1 std
menu color cmdmark 1;37;40 #ffff8b00 #ff8093a1 std
menu color cmdline 37;40 #fff0f0f0 #ff8093a1 std
menu color pwdborder 37;40 #40000000 #ff8093a1 std
menu color pwdheader 37;40 #ffff8b00 #ff8093a1 std
menu color pwdentry 37;40 #ffff8b00 #ff8093a1 std
menu color timeout_msg 37;40 #afac2a33 #00000000 none
menu color timeout 1;37;40 #ffff8b00 #00000000 std
menu color help 37;40 #ff1c2a33 #00000000 none
menu color msg07 37;40 #90ffffff #00000000 std

MENU AUTOBOOT Selection starts in # seconds

MENU TITLE Menu

label harddisk
        localboot 0x80
        MENU DEFAULT 

label mdisk ROS live
        kernel kernel/memdisk
        append iso bigraw initrd=bootimages/ros-live.iso

label pxelinux
        kernel pxelinux.0



The Windows way

Booting

tbd