COMO

Haciendo un servidor PXE con Ubuntu Server 8.04 LTS para distribuciuones multiples.

Tomado de Falko Timme - http://www.howtoforge.com/ubuntu_pxe_install_server Actualizado para uso con Hardy.

This tutorial shows how to set up a PXE (short for preboot execution environment) install server with Ubuntu 6.10 (Edgy Eft). A PXE install server allows your client computers to boot and install a Linux distribution over the network, without the need of burning Linux iso images onto a CD/DVD, boot floppy images, etc. This is handy if your client computers don't have CD or floppy drives, or if you want to set up multiple computers at the same time (e.g. in a large enterprise), or simply because you want to save the money for the CDs/DVDs. In this article I show how to configure a PXE server that allows you to boot multiple distributions: Ubuntu Edgy/Dapper, Debian Etch/Sarge, Fedora Core 6, CentOS 4.4, OpenSuSE 10.2, and Mandriva 2007.

I want to say first that this is not the only way of setting up such a system. There are many ways of achieving this goal but this is the way I take. I do not issue any guarantee that this will work for you!

1 Preliminary Note

It is important that you have a decent internet connection because your client computers will fetch all needed packages from the repositories in the internet (I tested this on a 16MBit ADSL2+ connection which seems to be fast enough. ;-)). It is possible to store all packages on the PXE server as well so that you don't need an internet connection (just the LAN connection to the PXE server), but then you need a lot of storage space on the PXE server (remember, it will serve multiple distributions), so I don't cover this here.

And the most important thing is that your client computers support booting over the network. You should check each computer's BIOS for this option.

On our system that should serve as the PXE server you should have already set up a basic Ubuntu 6.10 server system, for example as shown on pages 1 - 3 of this tutorial: http://www.howtoforge.com/perfect_setup_ubuntu_6.10

I prefer to do all the steps here as the root user. So if you haven't already created a root login, you should do so now:

sudo passwd root

Afterwards, log in as root:

su

If you would like to work as a normal user instead of root, remember to put sudo in front of all the commands shown in this tutorial. So when I run

apt-get update

you should run

sudo apt-get update

instead, etc.

2 Install All Necessary Packages

First we update our packages database by running

apt-get update

We need to install the packages netkit-inetd, tftpd-hpa, dhcp3-server, and lftp, so we run

aqpt-get install netkit-inetd tftpd-hpa dhcp3-server lftp


Detalles: dhcp3-server 3.0.6.x tftpd-hpa 0.48-x netkit-inetd inetutils-inetd 2:1.5.x (prove con openbsd-inetd 0.20050402-x, pero no me funco) lftp 3.6.1-x


Afterwards run

netstat -uap

and check if you see something like this:

root@server1:~# netstat -uap Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name udp 0 0 *:tftp

If you don't see the tftp line, please open /etc/inetd.conf and make sure you find the following in it:

vi /etc/inetd.conf

[...] #:BOOT: Tftp service is provided primarily for booting. Most sites # run this only on machines acting as "boot servers." tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot [...]

Then restart inetd:

/etc/init.d/inetd restart

puede ser que inetd tenga que ser peemplazado por el nombre del paquete instlado (p.ej. openbsd-inetd)

3 Configurando el servidor DHCP

--NOTA: ESTO SOLO ES NECESARIO SI NO EXISTE YA EN LA RED UN SERVIDOR DHCP--

We need a DHCP server in our local network. If there's no DHCP server in your local network, just configure and use the one on your future PXE server. Simply edit /etc/dhcp3/dhcpd.conf:

cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf_orig cat /dev/null > /etc/dhcp3/dhcpd.conf

vi /etc/dhcp3/dhcpd.conf

option domain-name-servers 145.253.2.75, 193.174.32.18;

default-lease-time 86400; max-lease-time 604800;

authoritative;

subnet 192.168.0.0 netmask 255.255.255.0 {

  • range 192.168.0.10 192.168.0.49; filename "pxelinux.0"; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1;

}

This will dynamically assign IP addresses from the range 192.168.0.10 to 192.168.0.49 to your client computers; the gateway is 192.168.0.1. Of course, you must adjust this configuration to your own environment!

It is important that you have the line

filename "pxelinux.0";

in your configuration!

Then restart your DHCP server:

/etc/init.d/dhcp3-server restart

If you already have a DHCP server in your network, you must modify its configuration. Let's assume you have something like

subnet 192.168.0.0 netmask 255.255.255.0 {

  • range 192.168.0.10 192.168.0.49; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1;

}

in the configuration. You must add

filename "pxelinux.0"; next-server 192.168.0.100;

to it (where 192.168.0.100 is the IP address of our Ubuntu PXE server) so that it looks like this:

subnet 192.168.0.0 netmask 255.255.255.0 {

  • range 192.168.0.10 192.168.0.49; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1; filename "pxelinux.0"; next-server 192.168.0.100;

}

Then restart your DHCP server.

EcuadorTeam/ConferenceAppearances/FLISOL/ServidorLocal/COMO (last edited 2008-08-06 16:38:00 by localhost)