Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
ipxe [Le 26/05/2019, 16:00]
nicolas84 ajout création usb iPXE
ipxe [Le 27/11/2021, 18:27] (Version actuelle)
nicolas84 [Créer le menu de iPXE]
Ligne 8: Ligne 8:
  
 Il existe d’autres méthodes comme par exemple : [[:​netboot]] ou [[:​netboot_live]] Il existe d’autres méthodes comme par exemple : [[:​netboot]] ou [[:​netboot_live]]
-<note warning> 
-Cet article est en cours de rédaction. Certaines informations peuvent être erronés ou incomplète. 
-</​note>​ 
- 
-===== Processus de démarrage ===== 
  
-  - L'​ordinateur client démarre par l'​interface réseau en mode PXE. 
-  - Le serveur DHCP, présent sur le réseau, lui envoie un fichier ipxe à démarrer. 
-  - L'​ordinateur client accède alors, par TFTP, au fichier de configuration de la machine. 
-  - Il charge le fichier de configuration par défaut. 
-  - Le fichier contient les informations nécessaire à l'​affichage d'un menu sur l'​écran de l'​ordinateur client. 
  
 ===== Installer et lancer les serveurs nécessaires ===== ===== Installer et lancer les serveurs nécessaires =====
Ligne 123: Ligne 113:
 </​file>​ </​file>​
 <note tip> <note tip>
-Dans la configuration ci-dessous le réseau est configurer ​en 10.0.0.0/​24,​ libre a vous de l’adapter à votre réseau actuel.+Dans la configuration ci-dessous le réseau est configuré ​en 10.0.0.0/​24,​ libre a vous de l’adapter à votre réseau actuel.
 </​note>​ </​note>​
 Les premières « option » permettent à isc-dhcp-server de comprendre des options DHCP spécifique à ipxe. Les premières « option » permettent à isc-dhcp-server de comprendre des options DHCP spécifique à ipxe.
Ligne 136: Ligne 126:
  
 Dans le cas où il n'est pas possible de désactiver les autres serveur DHCP, à minima, il faut régler le paramètre "​range"​ sur une autre plage que celle de votre autre serveur DHCP. Dans le cas où il n'est pas possible de désactiver les autres serveur DHCP, à minima, il faut régler le paramètre "​range"​ sur une autre plage que celle de votre autre serveur DHCP.
 +
 +Une autre méthode consiste à amorcer iPXE à l'aide d'une clé USB : [[:​ipxe#​creer_une_cle_usb_d_ipxe|Créer une clé USB d'​iPXE]]
 </​note>​ </​note>​
 ==== Serveur TFTP ==== ==== Serveur TFTP ====
Ligne 141: Ligne 133:
 Le serveur TFTP est celui qui va fournir les fichiers nécessaires au démarrage réseau. Le serveur TFTP est celui qui va fournir les fichiers nécessaires au démarrage réseau.
 <​code>​ <​code>​
-sudo apt install tftpd-hda +sudo apt install tftpd-hpa 
-sudo nano etc/​default/​tftpd-hpa+sudo nano /etc/​default/​tftpd-hpa
 </​code>​ </​code>​
 <file - /​etc/​default/​tftpd-hpa>​ <file - /​etc/​default/​tftpd-hpa>​
Ligne 158: Ligne 150:
 </​code>​ </​code>​
 <note tip> <note tip>
-Si un pare-feu est activé, ​il faut ouvrir le port 69+Si un pare-feu est activé, ouvrir le port 69
 </​note>​ </​note>​
  
Ligne 168: Ligne 160:
 </​code>​ </​code>​
 <note tip> <note tip>
-Si un pare-feu est activé, ​il faut ouvrir le port 2049+Si un pare-feu est activé, ​consultez cette page : [[nfs-ufw|Fixer les ports pour un partage NFS]]
 </​note>​ </​note>​
  
Ligne 178: Ligne 170:
 </​code>​ </​code>​
 Pour plus d'​infos : https://​doc.ubuntu-fr.org/​lamp Pour plus d'​infos : https://​doc.ubuntu-fr.org/​lamp
 +
 +On créer un lien symbolique de tftpboot sur le serveur LAMP :
 +<​code>​
 +ln -s /​var/​lib/​tftpboot /​var/​www/​html/​tftpboot
 +</​code>​
 +
 ===== Préparer les fichiers de démarrage iPXE ===== ===== Préparer les fichiers de démarrage iPXE =====
  
Ligne 255: Ligne 253:
 <note tip> <note tip>
 Ce menu ne sert à rien dans l’état, il est à compléter en fonction de ce que l’on a démarrer. Voir sur le chapitre [[:​ipxe#​completer_le_menu_ipxe|Compléter le menu iPXE]] Ce menu ne sert à rien dans l’état, il est à compléter en fonction de ce que l’on a démarrer. Voir sur le chapitre [[:​ipxe#​completer_le_menu_ipxe|Compléter le menu iPXE]]
 +
 +Des exemples de menu sont proposés sur cette page : [[http://​boot.salstar.sk/​|Exemples de menus IPXE]]
 </​note>​ </​note>​
  
Ligne 263: Ligne 263:
  
 <note tip> <note tip>
-Si cela ne fonctionne pas dans une machine virtuelle, tentez quand même sur un ordinateur physique. Sur les machines virtuelles, cela a parfois tendance à fonctionner une fois sur deux !+Si cela ne fonctionne pas dans une machine virtuelle, tentez quand même sur un ordinateur physique. Sur les machines virtuelles, cela a parfois tendance à être capricieux ​! 
 +Par exemple pour un test via VirtualBox, il faut impérativement installer les extensions packs pour ne pas avoir d'​erreur sur les fichier gz (utilisé pour lancer les kernel linux notamment) 
 +Dans les paramètres VirtualBox, ajouter l'​extension pack correspondant à votre version. Voir cette page pour le télécharger : https://​www.virtualbox.org/​wiki/​Download_Old_Builds
 </​note>​ </​note>​
 ===== Compléter le menu ipxe ===== ===== Compléter le menu ipxe =====
Ligne 331: Ligne 333:
  
 == Sous Windows == == Sous Windows ==
 +
 +Pré-requis : Télécharger et installer Windows ADK [[https://​docs.microsoft.com/​fr-fr/​windows-hardware/​get-started/​adk-install#​winADK|WinADK]]
 +
 +<note important>​
 +Désactiver votre programme antivirus lors de la manipulation des images.
 +</​note>​
 +
 +Dans le menu démarrer taper : "​Environnement de déploiement et d’outils de création d’images"​ et l'​ouvrir en tant qu'​administrateur.
 +
 +Copier WinPE 
 +<​code>​
 +copype amd64 C:​\WinPE_am64
 +</​code>​
 +
 +Monter l'​image de démarrage :
 +<​code>​
 +Dism /​Mount-Image /​ImageFile:"​C:​\WinPE_amd64\media\sources\boot.wim"​ /index:1 /​MountDir:"​C:​\WinPE_amd64\mount"​
 +</​code>​
 +
 <note tip> <note tip>
-A compléter, cette solution ​est plus complète que la création sous Linux+Il est possible a ce stade de rajouter des fichiers/​dossier dans C:​\WinPE_amd64\mount 
 + 
 +Il est aussi possible de modifier le script de démarrage (pour lancer des commandes automatiquement au démarrage) : 
 +Exemple : 
 +<file - C:​\WinPE_amd64\mount\Windows\System32\Startnet.cmd>​ 
 +wpeinit 
 +net use Y: \\10.0.0.200\win10_1809_custom_x64 /user:user pass 
 +Y:​\setup.exe 
 +</​file>​
 </​note>​ </​note>​
 +
 +__Pour ajouter des pilotes de périphériques (.inf) : __
 +
 +Un seul à la fois :
 +<​code>​
 +Dism /Add-Driver /​Image:"​C:​\WinPE_amd64\mount"​ /​Driver:"​C:​\SampleDriver\driver.inf"​
 +</​code>​
 +Tout un dossier de .inf (il peut être nécessaire d'​utiliser /​ForceUnsigned pour ajouter des pilotes non signés)
 +<​code>​
 +Dism /Add-Driver /​Image:"​C:​\WinPE_amd64\mount"​ /​Driver:"​C:​\SampleDriver"​ /Recurse
 +</​code>​
 +Vérification :
 +<​code>​
 +Dism /​Image:"​C:​\WinPE_amd64\mount"​ /​Get-Drivers
 +</​code>​
 +<note tip>
 +D'​autres manipulations et modifications sont possibles : [[https://​msdn.microsoft.com/​fr-fr/​library/​windows/​hardware/​dn938390(v=vs.85).aspx|WinPE : Monter et personnaliser]]
 +</​note>​
 +Quand toutes les modifications sont terminées, il faut démonter l'​image :
 +<​code>​
 +Dism /​Unmount-Image /​MountDir:"​C:​\WinPE_amd64\mount"​ /commit
 +</​code>​
 +
 +Création d'un image ISO :
 +<​code>​
 +Makewinpemedia /iso C:​\winpe_amd64 C:​\winpe_amd64.iso
 +</​code>​
  
 === Configuration du menu === === Configuration du menu ===
Ligne 381: Ligne 437:
 </​code>​ </​code>​
 <note tip> <note tip>
-Même si le répertoire samba est accessible anonymement (guest ok = yes), il faut saisir un utilisateur et un mot de passe bidon pour que la connexion fonctionne.+Même si le répertoire samba est accessible anonymement (guest ok = yes), il faut parfois ​saisir un utilisateur et un mot de passe bidon pour que la connexion fonctionne.
 </​note>​ </​note>​
  
Ligne 469: Ligne 525:
 ==== Bugs connus ==== ==== Bugs connus ====
  
-=== Ubuntu ​Server ​18.04.=== +=== Ubuntu ​et Lubuntu ​18.04.=== 
-Si Ubuntu ​Server ​18.04.1 n'​arrive pas a ce lancer (il s'​arrête en mode maintenance), ​rajouter ​"​systemd.mask=tmp.mount"​ entre "​ip=dhcp"​ et "​--" ​+Si Ubuntu ​ou Lubuntu ​18.04.1 n'​arrive pas à se lancer (il s'​arrête en mode maintenance), ​rajoutez ​"​systemd.mask=tmp.mount"​ entre "​ip=dhcp"​ et "​--" ​
  
-Source ​: https://​bugs.launchpad.net/​ubuntu/​+source/​casper/​+bug/​1754777#​yui_3_10_3_1_1557065713426_342+Pour Ubuntu ou Lubuntu 18.04.2, il faut rajouter en sus : "​systemd.mask=dev-hugepages.mount systemd.mask=dev-mqueue.mount systemd.mask=sys-fs-fuse-connections.mount systemd.mask=sys-kernel-config.mount systemd.mask=sys-kernel-debug.mount systemd.mask=tmp.mount toram"​ 
 + 
 +Pour Ubuntu et Lubuntu 18.04.3, il faut enlever toutes ses modifications faites pour Ubuntu Server 18.04. 1 et 2 sinon l'​installateur plante pendant la copie des fichiers de /​media/​filesystem  
 + 
 +Voir : https://​bugs.launchpad.net/​ubuntu/​+source/​casper/​+bug/​1754777#​yui_3_10_3_1_1557065713426_342 
 + 
 +=== Ubuntu 20.04 === 
 +Sur les distributions basées sur Ubuntu 20.04, un fsck des fichiers est effectué, ce qui rend le démarrage très long. Pour éviter cette étape il suffit de rajouter fsck.mode=skip après boot=casper 
 + 
 +=== Pas de réseau dans Windows PE === 
 +Si le retour de la commande ipconfig ne donne rien, alors c'est qu'il n'y a pas le pilote réseau adéquat pour votre carte réseau. Recherchez son pilote chez le constructeur de votre carte réseau, et, intégrez ce pilote lors de la construction de WinPE. (voir paragraphe : [[:​ipxe#​creer_un_windows_pe|Créer un WinPE sous windows]])
 ===== Voir aussi ===== ===== Voir aussi =====
  
 [[http://​ipxe.org|Site officiel de iPXE]] [[http://​ipxe.org|Site officiel de iPXE]]
 +
 +[[http://​boot.salstar.sk/​|Exemples de menus IPXE]]
  
 **__Contributeur__** **__Contributeur__**
  
 nicolas84 nicolas84
  • ipxe.1558879237.txt.gz
  • Dernière modification: Le 26/05/2019, 16:00
  • par nicolas84