gnu_linux_server:pxe_server:install
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
gnu_linux_server:pxe_server:install [2012/04/28 07:56] – créée guillaume | gnu_linux_server:pxe_server:install [2021/01/04 20:41] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Installation d'un serveur de boot PXE ====== | ====== Installation d'un serveur de boot PXE ====== | ||
- | PLACEHOLDER | + | Un serveur de boot PXE est un serveur permettant à d' |
+ | |||
+ | <note important> | ||
+ | |||
+ | ===== Installation ===== | ||
+ | |||
+ | La première étape est d' | ||
+ | < | ||
+ | next-server 192.168.0.252</ | ||
+ | La première ligne donne le fichier contenant l' | ||
+ | |||
+ | Une fois le serveur DHCP en place, on peut installer les paquets permettant d' | ||
+ | <code bash> | ||
+ | |||
+ | ===== Configuration TFTP ===== | ||
+ | |||
+ | Un serveur TFTP se comporte plus ou moins comme un serveur FTP mais est basé sur le protocole TFTP qui est plus basique et moins sûr que FTP. Cependant, pour un réseau local le serveur TFTP est tout de même efficace et à l' | ||
+ | |||
+ | Ici nous allons simplement dire au serveur où se trouvent les fichiers à servir sur le réseau. On édite pour cela le fichier /// | ||
+ | <code bash> | ||
+ | |||
+ | Maintenant, il faut mettre à disposition les fichiers de base du boot PXE. Ceux-ci se trouvent dans le répertoire /// | ||
+ | <code bash>cd / | ||
+ | for i in chain.c32 mboot.c32 menu.c32 pxelinux.0 \ | ||
+ | | ||
+ | cp ${i} /srv/tftp | ||
+ | done</ | ||
+ | |||
+ | Enfin on configure le démon PXE en lui donnant les informations concernant l' | ||
+ | < | ||
+ | default_address=192.168.0.252 | ||
+ | ... | ||
+ | tftpdbase=/ | ||
+ | domain=chezmoi.me</ | ||
+ | |||
+ | ===== Menu de boot minimal ===== | ||
+ | |||
+ | Dans un premier temps, et pour pouvoir tester le boot PXE, on va mettre en place un menu très simple. Il contiendra 2 choix possibles : démarrer sur le disque local ou redémarrer la machine. | ||
+ | |||
+ | On commence par créer un répertoire qui contiendra tous les fichiers de configuration permettant de définir le ou les menus à afficher. | ||
+ | <code bash> | ||
+ | |||
+ | Pour se faciliter la vie, on peut commencer par télécharger un fichier qui permettra d' | ||
+ | < | ||
+ | prompt 0 | ||
+ | kdbmap french.kdb | ||
+ | noescape 1 | ||
+ | timeout 300 | ||
+ | |||
+ | label bootlocal | ||
+ | menu label ^Local Boot | ||
+ | localboot 0 | ||
+ | |||
+ | label reboot | ||
+ | menu label ^Reboot | ||
+ | kernel reboot.c32</ | ||
+ | |||
+ | Une fois le menu créé, on donne les droits d' | ||
+ | <code bash> | ||
+ | chmod -R 755 / | ||
+ | |||
+ | Puis on peut démarrer une machine pour tester que le boot PXE fonctionne. On doit normalement avoir un menu avec les 2 entrées et un délai de 30 secondes. | ||
+ | ===== Menu de boot d'un OS : l' | ||
+ | |||
+ | Jusque là le menu de boot PXE ne sert pas à beaucoup de chose mais il est possible d' | ||
+ | |||
+ | On prépare le terrain en créant les répertoires qui accueilleront les fichiers de boot afin de pouvoir lancer l' | ||
+ | <code bash> | ||
+ | |||
+ | 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. | ||
+ | < | ||
+ | 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 // | ||
+ | <code bash>for i in stable testing unstable; do | ||
+ | for j in i386 amd64; do | ||
+ | wget -P / | ||
+ | |||
+ | tar xzf / | ||
+ | ln -s / | ||
+ | ln -s / | ||
+ | done | ||
+ | done</ | ||
+ | |||
+ | Il ne reste qu'à créer le menu de boot spécifique pour Debian. | ||
+ | On commence par éditer le fichier /// | ||
+ | < | ||
+ | menu label ^Debian --> | ||
+ | kernel menu.c32 | ||
+ | append pxelinux.cfg/ | ||
+ | |||
+ | Enfin on crée le fichier /// | ||
+ | < | ||
+ | prompt 0 | ||
+ | kdbmap french.kdb | ||
+ | noescape 1 | ||
+ | timeout 300 | ||
+ | default stable_i386 | ||
+ | |||
+ | label stable_i386 | ||
+ | menu label ^Stable i386 | ||
+ | kernel images/ | ||
+ | append vga=normal initrd=images/ | ||
+ | |||
+ | label stable_amd64 | ||
+ | menu label ^Stable amd64 | ||
+ | kernel images/ | ||
+ | append vga=normal initrd=images/ | ||
+ | |||
+ | label testing_i386 | ||
+ | menu label ^Testing i386 | ||
+ | kernel images/ | ||
+ | append vga=normal initrd=images/ | ||
+ | |||
+ | label testing_amd64 | ||
+ | menu label ^Testing amd64 | ||
+ | kernel images/ | ||
+ | append vga=normal initrd=images/ | ||
+ | |||
+ | label unstable_i386 | ||
+ | menu label ^Unstable i386 | ||
+ | kernel images/ | ||
+ | append vga=normal initrd=images/ | ||
+ | |||
+ | label unstable_amd64 | ||
+ | menu label ^Unstable amd64 | ||
+ | kernel images/ | ||
+ | append vga=normal initrd=images/ | ||
+ | |||
+ | label root_menu | ||
+ | menu label ^ <-- Previous menu | ||
+ | kernel vesamenu.c32 | ||
+ | append pxelinux.cfg/ | ||
+ | |||
+ | Un petit coup de rectification de droits. | ||
+ | <code bash> | ||
+ | chmod -R 755 / | ||
+ | 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' |
gnu_linux_server/pxe_server/install.1335599796.txt.gz · Last modified: 2021/01/04 20:40 (external edit)