======[Bor] LXC PXE====== Le LXC PXE va nous permettre de proposer un service de réinstallation des machines via le réseau. ===== Présentation ===== ^ Type | Linux Container (machine virtuelle) hébergée sur [[infrastructure:bor|]] | ^ Utilité | Service de réinstallation du GINFO | ^ Services | Installation PC | ^ OS | Ubuntu Server 17.04 | ^ Nom du LXC | bor_pxe | ^ IP | **10.61.16.30 **| =====Création de la LXC sur BOR===== Pour créer le Linux Container, je vous invite à suivre la seconde partie du tutoriel disponible sur cette page : [[musee:tutoriels:faire_un_lxc#creation_d_un_linux_container_lxc| Créer un Linux Container (LXC)]] La seule chose à respecter lors de la création du container est le nom que vous lui donnerez : **bor_pxe** ====Configuration de la LXC==== En suivant le précédent tutoriel pensez à : -> attribuer une IP fixe au LXC (cf tutoriel [[musee:tutoriels:faire_un_lxc|LXC]]) -> la mettre en démarrage automatique au démarrage de [[infrastructure:bor]] -> [[musee:tutoriels:ouvrir_un_service_lxc_depuis_de_l_exterieur|Ajouter une règle NAT]] pour permettre au LXC de communiquer avec l'extérieur via les ports entrants 137, 138, 139, 445 en TCP sur [[infrastructure:bor]] =====Installation des packets===== Avant toute chose, mettez vous en root sur le LXC ://** su root**// L'installation de PXE est simple mais un peu longue. Voici les étapes : On installe les packages suivant : $> sudo apt-get install tftpd-hpa syslinux =====Configuration du serveur TFTP===== Le serveur TFTP est une forme de serveur FTP très basique. Dans ce tutoriel, il sert à rendre disponible le menu de démarrage et le noyau Linux qui lui-même n'aura plus besoin de TFTP une fois démarré sur l'ordinateur client. TFTP joue un rôle critique mais très temporaire. Pour le configurer, il suffit de modifier le fichier /etc/default/tftpd-hpa : $> sudo xdg-open /etc/default/tftpd-hpa Et de compléter son contenu avec: # /etc/default/tftpd-hpa TFTP_USERNAME="tftp" TFTP_DIRECTORY="/var/lib/tftpboot" TFTP_ADDRESS="10.61.16.30:69" TFTP_OPTIONS="--secure" #Defaults for tftpd-hpa RUN_DAEMON="yes" Il faut ensuite redémarrer le service: $> sudo service tftpd-hpa restart =====INSTALLATION ET CONFIGURATION DES FICHIERS NETBOOT===== ====Installation des fichiers==== Rendez-vous sur [[http://archive.ubuntu.com/ubuntu/dists/]] pour télécharger des fichiers d'installateur. Il faut choisir une VERSION et une ARCHITECTURE : http://archive.ubuntu.com/ubuntu/dists/VERSION/main/installer-ARCH/current/images/netboot/netboot.tar.gz Il faut ensuite renommer les archives netboot.tar.gz selon l'architecture pour obtenir : netboot_VERSION_32.tar.gz (architecture i386) netboot_VERSION_64.tar.gz (architecture amd64) On crée ensuite des répertoires spécifiques à chaque VERSION sur le serveur et on y installe les fichiers. On prend ici l'exemple de PRECISE PANGOLIN: $> sudo mkdir /var/lib/tftpboot/precise $> cd /var/lib/tftpboot/precise $> sudo tar -xzf //netboot_precise_1024_32.tar.gz (architecture i386) $> sudo tar -xzf //netboot_precise_1024_64.tar.gz (architecture amd64) ====Création du menu de démarrage==== On installe le package syslinux : $> sudo apt-get install syslinux On en extrait 3 fichiers nécessaires et on les copie dans le dossier /var/lib/tftpboot/ : $> sudo cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot/ $> sudo cp /usr/lib/syslinux/vesamenu.c32 /var/lib/tftpboot/ $> sudo cp /usr/lib/syslinux/chain.c32 /var/lib/tftpboot/ On crée ensuite le menu permettant de choisir la VERSION et l'ARHITECTURE : $> sudo mkdir /var/lib/tftpboot/pxelinux.cfg $> gksu gedit /var/lib/tftpboot/pxelinux.cfg/default On modifie le menu (on prend encore une fois l'exemple de PRECISE PANGOLIN) : #default menu for all PXE boot DEFAULT vesamenu.c32 # liste des choix label Boot local disk kernel chain.c32 append hd0 label Precise 32bits installer kernel precise/ubuntu-installer/i386/boot-screens/vesamenu.c32 append precise/ubuntu-installer/i386/boot-screens/menu.cfg label Precise 64bits installer kernel precise/ubuntu-installer/amd64/boot-screens/vesamenu.c32 append precise/ubuntu-installer/amd64/boot-screens/menu.cfg Il suffit ensuite de démarrer le pc qu'on souhaite installer en PXE. =====Références===== * [[https://doc.ubuntu-fr.org/netboot_live]] * [[https://doc.ubuntu-fr.org/netboot]]