AS201281 Wiki

Your check engine light is on!

User Tools

Site Tools


gnu_linux_server:pxe_server:install

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
gnu_linux_server:pxe_server:install [2012/05/04 20:28] – 755 et non pas 744 guillaumegnu_linux_server:pxe_server:install [2021/01/04 20:41] (current) – external edit 127.0.0.1
Line 65: Line 65:
 ===== Menu de boot d'un OS : l'exemple de Debian ===== ===== Menu de boot d'un OS : l'exemple de Debian =====
  
-PLACEHOLDER+Jusque là le menu de boot PXE ne sert pas à beaucoup de chose mais il est possible d'aller plus loin. Nous allons modifier le contenu du TFTP et du menu afin de pouvoir lancer l'installation de systèmes d'exploitation. Dans ce cas pratique, nous allons voir l'installation de Debian. 
 + 
 +On prépare le terrain en créant les répertoires qui accueilleront les fichiers de boot afin de pouvoir lancer l'installation des versions **stable**, **testing** et **unstable** de Debian dans les architectures **i386** et **amd64**. 
 +<code bash>mkdir -p /srv/tftp/images/debian/{stable,testing,unstable}{i386,amd64}</code> 
 + 
 +Maintenant on télécharge les fichiers de boot depuis les archives de Debian. 
 +Les URL de téléchargement ont toutes la même forme, à savoir. 
 +<code>http://ftp.fr.debian.org/debian/dists/${VERSION}/main/installer-${ARCH}/current/images/netboot/netboot.tar.gz</code> 
 +La variable **VERSION** peut être **stable**, **testing** ou **unstable**. 
 +La variable **ARCH** peut être **i386** ou **amd64**. 
 + 
 +On télécharge les archives contenant les fichiers de netboot grâce à l'URL ci-dessus. On extrait le contenu et on crée les liens symboliques vers le fichier //linux// et //initrd.gz// pour se faciliter la vie plus tard. 
 +<code bash>for i in stable testing unstable; do 
 +  for j in i386 amd64; do 
 +    wget -P /srv/tftp/images/debian/${i}/${j} http://ftp.fr.debian.org/debian/dists/${i}/main/installer-${j}/current/images/netboot/netboot.tar.gz 
 + 
 +    tar xzf /srv/tftp/images/debian/${i}/${j}/netboot.tar.gz 
 +    ln -s /srv/tftp/images/debian/${i}/${j}/debian-installer/amd64/linux /srv/tftp/images/debian/${i}/${j}/linux 
 +    ln -s /srv/tftp/images/debian/${i}/${j}/debian-installer/amd64/initrd.gz /srv/tftp/images/debian/${i}/${j}/initrd.gz 
 +  done 
 +done</code> 
 + 
 +Il ne reste qu'à créer le menu de boot spécifique pour Debian. 
 +On commence par éditer le fichier ///srv/tftp/pxelinux.cfg/default// et on y ajoute une entrée qui fera le lien vers le menu dédié au boot de Debian. 
 +<code>label debianboot 
 +  menu label ^Debian --> 
 +  kernel menu.c32 
 +  append pxelinux.cfg/debian.conf</code> 
 + 
 +Enfin on crée le fichier ///srv/tftp/pxelinux.cfg/debian.conf// qui va contenir le menu de boot sur le réseau. 
 +<code>default vesamenu.c32 
 +prompt 0 
 +kdbmap french.kdb 
 +noescape 1 
 +timeout 300 
 +default stable_i386 
 + 
 +label stable_i386 
 +  menu label ^Stable i386 
 +  kernel images/debian/stable/i386/linux 
 +  append vga=normal initrd=images/debian/stable/i386/initrd.gz -- 
 + 
 +label stable_amd64 
 +  menu label ^Stable amd64 
 +  kernel images/debian/stable/amd64/linux 
 +  append vga=normal initrd=images/debian/stable/amd64/initrd.gz -- 
 + 
 +label testing_i386 
 +  menu label ^Testing i386 
 +  kernel images/debian/testing/i386/linux 
 +  append vga=normal initrd=images/debian/testing/i386/initrd.gz -- 
 + 
 +label testing_amd64 
 +  menu label ^Testing amd64 
 +  kernel images/debian/testing/amd64/linux 
 +  append vga=normal initrd=images/debian/testing/amd64/initrd.gz -- 
 + 
 +label unstable_i386 
 +  menu label ^Unstable i386 
 +  kernel images/debian/unstable/i386/linux 
 +  append vga=normal initrd=images/debian/unstable/i386/initrd.gz -- 
 + 
 +label unstable_amd64 
 +  menu label ^Unstable amd64 
 +  kernel images/debian/unstable/amd64/linux 
 +  append vga=normal initrd=images/debian/unstable/amd64/initrd.gz -- 
 + 
 +label root_menu 
 +  menu label ^ <-- Previous menu 
 +  kernel vesamenu.c32 
 +  append pxelinux.cfg/default</code> 
 + 
 +Un petit coup de rectification de droits. 
 +<code bash>chown -R tftp:root /srv/tftp 
 +chmod -R 755 /srv/tftp</code> 
 +Et le menu est prêt pour installer Debian par le réseau sans utiliser un périphérique comme une clé USB ou un CD. Il va sans dire qu'il est possible de faire de même avec d'autres distributions GNU/Linux comme Ubuntu, etc.
gnu_linux_server/pxe_server/install.1336163321.txt.gz · Last modified: 2021/01/04 20:40 (external edit)