Sommaire
- configuration du serveur
- configuration DHCP/TFTP/NFS pour installer les PC grace au boot PXE
- configuration NFS :
- configuration du serveur DHCP
- Copie et configuration des médias
- Pour MANDRIVA:
- Pour UBUNTU
- Configuration de TFTP
- Configuration de PXELINUX:
- Mises à jour bi-annuelle des médias
- Mise à jour Ubuntu
- Mise à jour Mandriva avec les nouvelles ISO
- Mises à jour permanente des distributions
configuration du serveur
le serveur mis en place en Mars 2010 est : Debian GNU/Linux 5.0 (x86)
configuration DHCP/TFTP/NFS pour installer les PC grace au boot PXE
docs :
doc non utile ici (car PXE sur Debian) http://wiki.mandriva.com/en/Docs/Installing_Mandriva_Linux/PXE_Install
doc utile pour le netinst de Mandriva : http://wiki.mandriva.com/en/Development/Howto/Stage_One_Install
doc divers http://wiki.mandriva.com/fr/Installer_Mandriva_Linux
config pour TFTP:
doc Setting Up A PXE Install Server For Multiple Linux Distributions On Debian Lenny http://www.howtoforge.com/setting-up-a-pxe-install-server-for-multiple-linux-distributions-on-debian-lenny
doc Setting Up A PXE Install Server On Ubuntu 9.10 http://www.howtoforge.com/setting-up-a-pxe-install-server-on-ubuntu-9.10
config pour install de ubuntu en NFS
Installation d'ubuntu avec le LiveCD en réseau
http://dev.petitchevalroux.net/linux/installation-ubuntu-avec-livecd-reseau-linux.68.html
- les procédures de netinst sont spécifiques aux distributions
configuration NFS :
# apt-get install nfs-kernel-server
contenu du fichier /etc/exports :
# /etc/exports: the access control list for filesystems which may be exported # to NFS clients. See exports(5). /media/inst *(ro,async,no_subtree_check)
recharger la configuration avec le commande
# exportfs -a
configuration du serveur DHCP
- installation du paquet
# apt-get install dhcp3-server
contenu du fichier /etc/dhcp3/dhcpd.conf :
option domain-name "microtel91.local"; option domain-name-servers 172.16.0.1; default-lease-time 6000; max-lease-time 72000; authoritative; log-facility local7; subnet 172.16.0.0 netmask 255.255.255.0 { option routers 172.16.0.1; range 172.16.0.10 172.16.0.254; next-server 172.16.0.1; filename "pxelinux.0";
Copie et configuration des médias
Pour MANDRIVA:
ici l'exemple est donné avec les DVD Mandriva Free 2010.1
- Créer le répertoire de stockage:
# mkdir /media/inst # cd /media/inst
- Télécharger les ISO:
#wget ftp://ftp.free.fr/mirrors/ftp.mandriva.com/MandrivaLinux/official/iso/2010.2/mandriva-linux-one-2010.2-GNOME-europe-americas-cdrom-i586.iso
- Vérifier avec les Md5sum
# wget ftp://ftp.free.fr/mirrors/ftp.mandriva.com/MandrivaLinux/official/iso/2010.2/mandriva-linux-one-2010.2-GNOME-europe-americas-cdrom-i586.iso.md5
- on crée alors sous /media/inst des dossiers pour y copier le contenu des CD
# mkdir /media/inst/mandriva-linux-i586 # mkdir /media/inst/mandriva-linux-x86_64
-
Pour ne pas avoir à modifier le fichier de configuration des installations /var/lib/tftpboot/pxelinux.cfg/default, à chaque nouvelle version de la distribution, nous créons des liens symboliques des dossiers mdv-i586 et mdv-x86_64 vers les dossiers crées :
# ls -n mandriva-linux-i586 mdv-i586 # ls -n mandriva-linux-x86_64 mdv-x86_64
- monter le 1er DVD (i586) ( en loopback) et copier les données (ici en exemple mandriva-linux-free-2010.0-i586.iso)
# mount -o loop mandriva-linux-free-2010.0-i586.iso /mnt (cette commande ne fonctionne pas ?) # cp -a /mnt/i586/* /media/inst/mandriva-linux-free-2010.1-i586 # umount /mnt
- monter le 2ème DVD (x86_64) ( en loopback) et copier les données
# mount -o loop mandriva-linux-free-2010.0-x86_64.iso /mnt # cp -a /mnt/x86_64/* /media/inst/mandriva-linux-free-2010.1-x86_64 # umount /mnt
grace aux liens symboliques créés nous accederons au contenu des DVD via les dossiers :
/media/inst/mdv-i586
/media/inst/mdv-x86_64
Nous n'avons plus besoin des images ISO que nous pouvons supprimer.
rm /media/inst/mandriva-linux-free-2010.0-i586.iso rm /media/inst/mandriva-linux-free-2010.0-x86_64.iso
Pour UBUNTU
- le "netboot"
# cd /var/lib/tftpboot/
On récupère un pxelinux préconfiguré (debian, ubuntu, etc...), et les kernels/initrd d'installation i386 et amd64 d'ubuntu
- création du répertoire /var/lib/tftpboot/ubuntu-installer/i386 pour l'archive
# mkdir /var/lib/tftpboot/ubuntu-installer/i386 # cd /var/lib/tftpboot/ubuntu-installer/i386
- download du netboot i386 :
# wget http://archive.ubuntu.com/ubuntu/dists/lucid/main/installer-i386/current/images/netboot/netboot.tar.gz
- on extrait l'archive
# tar xvzf netboot.tar.gz ./ ./ubuntu-installer/ ./ubuntu-installer/i386/ ./ubuntu-installer/i386/initrd.gz ./ubuntu-installer/i386/linux ./ubuntu-installer/i386/pxelinux.0 ./ubuntu-installer/i386/pxelinux.cfg/ ./ubuntu-installer/i386/pxelinux.cfg/default ./ubuntu-installer/i386/boot-screens/ ./ubuntu-installer/i386/boot-screens/vesamenu.c32 ./ubuntu-installer/i386/boot-screens/adtext.cfg ./ubuntu-installer/i386/boot-screens/menu.cfg ./ubuntu-installer/i386/boot-screens/po4a.cfg ./ubuntu-installer/i386/boot-screens/prompt.cfg ./ubuntu-installer/i386/boot-screens/stdmenu.cfg ./ubuntu-installer/i386/boot-screens/text.cfg ./ubuntu-installer/i386/boot-screens/f1.txt ./ubuntu-installer/i386/boot-screens/f10.txt ./ubuntu-installer/i386/boot-screens/f2.txt ./ubuntu-installer/i386/boot-screens/f3.txt ./ubuntu-installer/i386/boot-screens/f4.txt ./ubuntu-installer/i386/boot-screens/f5.txt ./ubuntu-installer/i386/boot-screens/f6.txt ./ubuntu-installer/i386/boot-screens/f7.txt ./ubuntu-installer/i386/boot-screens/f8.txt ./ubuntu-installer/i386/boot-screens/f9.txt ./ubuntu-installer/i386/boot-screens/splash.png ./pxelinux.cfg ./pxelinux.0 ./version.info
- idem pour x86_64 :
# mkdir /var/lib/tftpboot/ubuntu-installer/amd64 # cd /var/lib/tftpboot/ubuntu-installer/amd64 # wget http://archive.ubuntu.com/ubuntu/dists/lucid/main/installer-amd64/current/images/netboot/netboot.tar.gz # tar xvzf netboot.tar.gz ./ ./ubuntu-installer/ ./ubuntu-installer/amd64/ ./ubuntu-installer/amd64/initrd.gz ./ubuntu-installer/amd64/linux ./ubuntu-installer/amd64/pxelinux.0 ./ubuntu-installer/amd64/pxelinux.cfg/ ./ubuntu-installer/amd64/pxelinux.cfg/default ./ubuntu-installer/amd64/boot-screens/ ./ubuntu-installer/amd64/boot-screens/vesamenu.c32 ./ubuntu-installer/amd64/boot-screens/adtext.cfg ./ubuntu-installer/amd64/boot-screens/menu.cfg ./ubuntu-installer/amd64/boot-screens/po4a.cfg ./ubuntu-installer/amd64/boot-screens/prompt.cfg ./ubuntu-installer/amd64/boot-screens/stdmenu.cfg ./ubuntu-installer/amd64/boot-screens/text.cfg ./ubuntu-installer/amd64/boot-screens/f1.txt ./ubuntu-installer/amd64/boot-screens/f10.txt ./ubuntu-installer/amd64/boot-screens/f2.txt ./ubuntu-installer/amd64/boot-screens/f3.txt ./ubuntu-installer/amd64/boot-screens/f4.txt ./ubuntu-installer/amd64/boot-screens/f5.txt ./ubuntu-installer/amd64/boot-screens/f6.txt ./ubuntu-installer/amd64/boot-screens/f7.txt ./ubuntu-installer/amd64/boot-screens/f8.txt ./ubuntu-installer/amd64/boot-screens/f9.txt ./ubuntu-installer/amd64/boot-screens/splash.png ./pxelinux.cfg ./pxelinux.0 ./version.info
Configuration de TFTP
- installation du paquet
# apt-get install tftpd-hpa
-
Pour Mandriva on creer un dossier mandriva' sous /var/lib/tftpboot/ pour y copier les noyaux de boot des PC à installer.
# mkdir /var/lib/tftpboot/mandriva/i586 # mkdir /var/lib/tftpboot/mandriva/x86_64 # cp -a /media/inst/mdv-i586/isolinux/alt0 /var/lib/tftpboot/mandriva/i586 # cp -a /media/inst/mdv-x86_64/isolinux/alt0 /var/lib/tftpboot/mandriva/x86_64
Nous obtenons alors la configuration suivante :
# find /var/lib/tftpboot/mandriva/ /var/lib/tftpboot/mandriva/ /var/lib/tftpboot/mandriva/x86_64 /var/lib/tftpboot/mandriva/x86_64/alt0 /var/lib/tftpboot/mandriva/x86_64/alt0/vmlinuz /var/lib/tftpboot/mandriva/x86_64/alt0/all.rdz /var/lib/tftpboot/mandriva/i586 /var/lib/tftpboot/mandriva/i586/alt0 /var/lib/tftpboot/mandriva/i586/alt0/vmlinuz /var/lib/tftpboot/mandriva/i586/alt0/all.rdz
Configuration de PXELINUX:
-
Création du fichier /var/lib/tftpboot/pxelinux.cfg/default
# mkdir /var/lib/tftpboot/pxelinux.cfg
-
Sous ce dossier créer un fichier appelé : default donc le contenu est :
DISPLAY boot.txt DEFAULT mandriva32 LABEL mandriva32 kernel mandriva/i586/alt0/vmlinuz append initrd=mandriva/i586/alt0/all.rdz automatic=method:nfs,network:dhcp,server:172.16.0.1,directory:/media/inst/mdv-i586 vga=788 splash=silent LABEL mandriva64 kernel mandriva/x86_64/alt0/vmlinuz append initrd=mandriva/x86_64/alt0/all.rdz automatic=method:nfs,network:dhcp,server:172.16.0.1,directory:/media/inst/mdv-x86_64 vga=788 splash=silent LABEL netubuntu32 kernel ubuntu-installer/i386/linux append vga=788 initrd=ubuntu-installer/i386/initrd.gz -- quiet LABEL netubuntu64 kernel ubuntu-installer/amd64/linux append vga=788 initrd=ubuntu-installer/amd64/initrd.gz -- quiet PROMPT 1 TIMEOUT 0
-
le fichier pxelinux.cfg est sous /var/lib/tftpboot
- Pour Mandriva la correspondance des fichiers de boot des PC
mandriva/i586/alt0/vmlinuz --> /var/lib/tftpboot/mandriva/i586/alt0/vmlinuz mandriva/i586/alt0/all.rdz --> /var/lib/tftpboot/mandriva/i586/alt0/all.rdz mandriva/x86_64/alt0/vmlinuz --> /var/lib/tftpboot/mandriva/x86_64/alt0/vmlinuz mandriva/x86_64/alt0/all.rdz -->/var/lib/tftpboot/mandriva/x86_64/alt0/all.rdz
L'installation se fait par NFS à partir de :
/media/inst/mdv-i586 /media/inst/mdv-x86_64
- Si on veut un acces Internet, configurer le NAT sur le serveur d'installation
# echo 1 > /proc/sys/net/ipv4/ip_forward # iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
-
Note: remplacer eth0 par l'interface de sortie Internet.
Mises à jour bi-annuelle des médias
Mise à jour Ubuntu
Mise à jour Mandriva avec les nouvelles ISO
ici la mise à jour est faite avec les DVD Mandriva free 2010.2 32 et 64bit
-
copier iso sous /media/inst (une seule à la fos si ma,que de place)
#ls -l /media/inst/mandriva-linux-free-2010.2-*.iso /media/inst/mandriva-linux-free-2010.2-i586.iso /media/inst/mandriva-linux-free-2010.2-x86_64.iso
- création des 2 nouveaux dossiers qui vont recevoir les contenus des DVD
# mkdir /media/inst/mandriva-linux-free-2010.2-i586 # mkdir /media/inst/mandriva-linux-free-2010.2-x86_64
-
On casse les anciens liens symbolique sous /media/inst/
mdv-i586 -> mandriva-linux-free-2010.1-i586/ mdv-x86_64 -> mandriva-linux-free-2010.1-x86_64/
pour les faire pointer sur les nouveau dossiers.
# cd /media/inst # rm mdv-i586 # rm mdv-x86_64
- on efface les anciens dossiers contenant les données
# rm -rf mandriva-linux-free-2010.1-i586 # rm -rf mandriva-linux-free-2010.1-x86_64
- on recreer les nouveaux liens
# ls -n mandriva-linux-free-2010.2-i586 mdv-i586 # ls -n mandriva-linux-free-2010.2-x86_64 mdv-x86_64
- montage du nouveau DVD i586
# mount -o loop /media/inst/mandriva-linux-free-2010.2-i586.iso /mnt
- vérifiication du contenu de /mnt
# ll /mnt total 9 -r-xr-xr-x 1 root root 82 2009-10-30 14:25 autorun.inf -r--r--r-- 1 root root 2048 2010-07-01 16:14 boot.catalog dr-xr-xr-x 3 root root 2048 2009-04-23 12:48 dosutils dr-xr-xr-x 7 root root 4096 2010-07-01 16:14 i586
- copie du contenu du DVD vers le dossier crée
#cp -a /mnt/i586 /media/inst/mandriva-linux-free-2010.2-i586
- démontage et suppression du fichier ISO dont nous n'avons plus besoin.
# umount /mnt # rm /media/inst/mandriva-linux-free-2010.2-i586.iso
- idem pour le DVD x86_64
- montage du nouveau DVD x86_64
# mount -o loop /media/inst/mandriva-linux-free-2010.2-x86_64.iso /mnt
- vérifiication du contenu de /mnt
# ll /mnt total 9 -r-xr-xr-x 1 root root 82 2009-10-30 14:25 autorun.inf -r--r--r-- 1 root root 2048 2010-07-01 16:14 boot.catalog dr-xr-xr-x 3 root root 2048 2009-04-23 12:48 dosutils dr-xr-xr-x 7 root root 4096 2010-07-01 16:14 x86_64
- copie du contenu du DVD vers le dossier crée
#cp -a /mnt/x86_64 /media/inst/mandriva-linux-free-2010.2-x86_64
- démontage et suppression du fichier ISO dont nous n'avons plus besoin.
# umount /mnt # rm /media/inst/mandriva-linux-free-2010.2-x86_64.iso
- mise à jour des noyaux de boot de PC à installer
# rm -r /var/lib/tftpboot/mandriva/i586/* # rm -r /var/lib/tftpboot/mandriva/x86_64/* # cp -a /media/inst/mdv-i586/isolinux/alt0 /var/lib/tftpboot/mandriva/i586 # cp -a /media/inst/mdv-x86_64/isolinux/alt0 /var/lib/tftpboot/mandriva/x86_64
-
mise à jour du fichier /var/lib/tftpboot/pxelinux.cfg/default pour indiquer le nouveau nom de la distribution.
label mandriva32 menu label ^Mandriva 2010.2 32bit kernel mandriva/i586/alt0/vmlinuz append initrd=mandriva/i586/alt0/all.rdz automatic=method:nfs,network:dhcp,server:172.16.0.1,directory:/media/inst/mdv-i586 vga=788 splash=silent label mandriva64 menu label ^Mandriva 2010.2 64bit kernel mandriva/x86_64/alt0/vmlinuz append initrd=mandriva/x86_64/alt0/all.rdz automatic=method:nfs,network:dhcp,server:172.16.0.1,directory:/media/inst/mdv-x86_64 vga=788 splash=silent