creation d’un serveur tftp pour les Install Party

Je vais détailler ici le processus de création de ce serveur ainsi que les modifications du serveur dhcp afin que les agents PXE de chaque Poste le trouve au démarrage
on commence par installer le serveur tftp via

apt-get install atftpd

le fichier de configuration se trouve dans /etc/default/ et se nomme tftpd-hpason contenu :

# /etc/default/tftpd-hpaTFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"

vérifier que le répertoire /srv/tftp existe bien sinon

mkdir /srv/tftp

on installe ensuite le serveur PXE

via

apt-get install pxe syslinux

copier le fichier /usr/lib/syslinux/pxelinux.0 dans /srv/tftp/ avec la commande

cp /usr/lib/syslinux/pxelinux.0 /srv/tftp/

maintenant on va éditer le fichier pxe.conf qui se trouve dans /etc/pxe.conf

son contenu :

# which interface to use
interface=eth0
default_address=172.28.31.2
# the multicast ip address to listen on
multicast_address=224.0.1.2
# mtftp info
mtftp_address=224.1.5.1
mtftp_client_port=1758
mtftp_server_port=1759
# the port to listen on
listen_port=4011
# enable multicast?
use_multicast=1
# enable broadcast?
use_broadcast=0
# user prompt
prompt=Press F8 to view menu ...
prompt_timeout=10
# what services to provide, priority in ordering
# CSA = Client System Architecture
# service=<CSA>,<min layer>,<max layer>,<basename>,<menu entry>
service=X86PC,0,0,local,Local boot
service=X86PC,0,0,pxelinux,PXELinux
# tftpd base dir
tftpdbase=/srv/tftp
# domain name
domain=bla.com

bon maintenant on va préparer le boot des machines, heureusement les développeurs de distribution ont pensés a vous vous avez juste a télécharger l’archive ci dessous et a la décompresser dans /srv/tftp

au cas ou vous l’auriez décompresser ailleur utilisez la commande cp -r /…/* /srv/tftp/ en remplacent les .. par le chemin adéquat

le fichier de configuration du pxe se situe dans /srv/tftp/pxelinux.cfg/default ne pas le changer par contre

son contenu

# D-I config version 2.0
include debian-installer/i386/boot-screens/menu.cfg
default debian-installer/i386/boot-screens/vesamenu.c32
prompt 0
timeout 0

un autre exemple de boot pxe

display debian-installer/i386/boot-screens/syslinux.txt
default linux
F1 debian-installer/i386/boot-screens/f1.txt
F2 debian-installer/i386/boot-screens/f2.txt
label linux
kernel debian-installer/i386/linux
append vga=normal initrd=debian-installer/i386/initrd.gz ramdisk_size=9372 root=/dev/rd/0 devfs=mount,dall rw --
label expert
kernel debian-installer/i386/linux
append DEBCONF_PRIORITY=low vga=normal initrd=debian-installer/i386/initrd.gz ramdisk_size=9372 root=/dev/rd/0 devfs=mount,dall rw--
prompt 1
timeout 0

voici le contenu du menu.cfg afficher dans notre exemple

menu hshift 7
menu width 61
menu title Debian GNU/Linux installer boot menu
include debian-installer/i386/boot-screens/stdmenu.cfg
include debian-installer/i386/boot-screens/txt.cfg
include debian-installer/i386/boot-screens/amdtxt.cfg
include debian-installer/i386/boot-screens/gtk.cfg
include debian-installer/i386/boot-screens/amdgtk.cfg
menu begin advanced
menu title Advanced options
include debian-installer/i386/boot-screens/stdmenu.cfg
label mainmenu
menu label ^Back..
menu exit
include debian-installer/i386/boot-screens/adtxt.cfg
include debian-installer/i386/boot-screens/amdadtxt.cfg
include debian-installer/i386/boot-screens/adgtk.cfg
include debian-installer/i386/boot-screens/amdadgtk.cfg
include debian-installer/i386/boot-screens/dtmenu.cfg
menu end
label help
menu label ^Help
text help
Display help screens; type 'menu' at boot prompt to return to this menu
endtext
config debian-installer/i386/boot-screens/prompt.cfg
include debian-installer/i386/boot-screens/spk.cfg
include debian-installer/i386/boot-screens/amdspk.cfg
include debian-installer/i386/boot-screens/spkgtk.cfg
include debian-installer/i386/boot-screens/amdspgtk.cfg

a vous de lire et adapter bien sur

maintenant on va s’attaquer au serveur dhcpd qui va envoyer lors de la requete dhcp le lien vers le PXE

on install le paquet dhcpd

apt-get install dhcp

son fichier de configuration se trouve dans /etc/dhcpd.conf

il faut l’adapter sur le réseau sur lequel vous vous trouver bien sur

pour rajouter une plage au client modifiez celui ci en rajoutant

range 192.168.0.50 192.168.0.99;

et adapter le reste ensuite

subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.50 192.168.0.99;
server-name "server-name";
next-server ipduserveurpxe
filename "/srv/tftp/pxelinux.0";
}

bon maintenant que la configuration est fini, on démarre les démons :

/etc/init.d/atftpd start
/etc/init.d/pxe start
/etc/init.d/dhcp start

si vous obtenez un message d’erreur dans le lancement d’un des démons

faite un petit

tail -f /var/log/messages

dans un autre shell afin de voir les erreurs et les corriger

ce tuto sera complété et modifié au besoin lors de l’installation du serveur pour notre prochaine Install Party

Be Sociable, Share!

Add a Comment

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *