Install PXE : Différence entre versions

De ArchwikiFR
m (Robot : Enlève modèles : I18n, Lang, Stub, Translateme)
m (Depuis un serveur PXE : modèle command)
 
(4 révisions intermédiaires par 3 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 +
[[Catégorie:Installation]]
 +
[[en:PXE]]
  
 +
Vous possédez un portable non équipé de lecteur de CD et de plus ne vous permet pas de démarrer sur une clé USB... <strike>vous vous êtes fait roulés</strike>, vous pouvez néanmoins installer Arch Linux à l'aide d'un serveur [[wikipedia:Preboot Execution Environment|PXE]].
  
{{Article summary start}}
+
== Utilisation ==
{{Article summary text| 1=
+
Un utilisateur d'Archlinux propose le paquet {{AUR|archiso-pxe-server}} qui rend la tâche bien plus simple.
<p>cette article permet d'installer Arch Linux par le réseau </p>}}
 
{{Article summary heading|Langages disponibles}}
 
 
 
 
 
 
 
 
 
{{Article summary heading|Articles en rapport}}
 
 
 
{{Article summary wiki|Official Arch Linux Install Guide (Français)}}
 
{{Article summary end}}
 
 
 
 
 
= Démarrage par le Réseau =
 
 
 
Votre ordinateur portable n'est pas fournit avec un lecteur CD-ROM, et/ou ne vous permet pas de démarrer à partir d'un disque usb ? N'ayez pas peur, vous pouvez démarrer en utilisant PXE.
 
 
 
== Pré-requis ==
 
  
Vous aurez besoin au moins des éléments suivant:
+
{{note|Les IPs de cet article sont bien sûr donné à titre d'exemple, à vous de les modifier par celles que vous avez.}}
* un serveur capable de faire tourner DHCP
 
* un serveur capable de faire tourner (a)TFTPD
 
* De [ftp://ftp.archlinux.org/iso/archboot/latest/ l'image iso d'installation archboot] (l'image officiel ne peut être utilisé pour ça )
 
* il peut aussi être nécessaire de désactiver la fonction DHCP de votre routeur
 
  
Les serveurs DHCP et TFTP peuvent être sur la même machine si vous n'en posséder qu'une.
+
=== Depuis l'environnement d'installation ===
  
Installez le programme nécessaire sur votre installation existante de Arch Linux qui servira de serveur pour l'installation sur votre client:
+
Démarrer sur la dernière image d'installation, se connecter, puis:
 +
ifconfig eth0 192.168.0.7
 +
route add default gw 192.168.0.1
 +
echo nameserver 192.168.0.1 > /etc/resolv.conf
 +
pacman -Sy dnsmasq nbd
 +
wget http://aur.archlinux.org/packages/archiso-pxe-server/archiso-pxe-server.tar.gz -O - | tar zxvf -
 +
cd archiso-pxe-server/
 +
chmod +x archiso-pxe-server
 +
./archiso-pxe-server
  
  pacman -S mkpxelinux tftp-hpa dhcp
+
=== Depuis un environnement déjà installé ===
 +
  pacman -S dnsmasq nbd
 +
wget http://aur.archlinux.org/packages/archiso-pxe-server/archiso-pxe-server.tar.gz -O - | tar zxvf -
 +
cd archiso-pxe-server/
 +
chmod +x archiso-pxe-server
 +
./archiso-pxe-server -s archlinux-2010.05-core-i686.iso
  
== Préparer dhcpd ==
+
{{note|Ne pas hésiter à regarder le script pour plus d'informations.}}
  
Remplacez le fichier par défaut /etc/dhcpd.conf par celui qui suit (ajuster le à votre configuration réseau):
 
  
# /etc/dhcpd.conf
+
Une fois le serveur lancé, il n'y a plus qu'à démarrer la machine sur laquelle vous voulez installer depuis le réseau et poursuivre avec la page d'[[installation]].
option domain-name-servers 208.67.222.222, 208.67.220.220;
 
default-lease-time 86400;
 
max-lease-time 604800;
 
authoritative;
 
subnet 192.168.0.0 netmask 255.255.255.0 {
 
  range 192.168.0.10 192.168.0.49;
 
  filename "pxelinux.0";        # the PXELinux boot agent
 
  option subnet-mask 255.255.255.0;
 
  option broadcast-address 192.168.0.255;
 
  option routers 192.168.0.1;
 
}
 
  
Dhcpd ne tournera pas sans l'ipv6. Si vous avez désactive ipv6, recharger le module:
+
=== Depuis un serveur PXE ===
modprobe ipv6
+
En admettant que vous disposiez déjà de l'infrastructure pour un serveur PXE fonctionnel (serveur DHCP, TFTP et --dans le cas d'Archlinux-- NFS), voici la méthode :
 +
# il faut télécharger la dernière iso ;
 +
# l'extraire ({{Ic|tar xvf}} ou monter l'image en {{Ic|loop}} puis la copier)
 +
# proposer le noyau ({{filename|/arch/boot/<architecture>/vmlinuz}}) et l'initramfs ({{filename|/arch/boot/<architecture>/archiso.img}}) en TFTP ;
 +
# proposer le reste du live en NFS.
  
== Préparer tftpd ==
+
La configuration de pxelinux a donc l'air de ceci :
 
+
{{file|name=archlinux.cfg|content=<nowiki>LABEL arch32_nfs
lancez mkpxelinux, qui vas placer les fichiers de démarrage requis dans /var/tftpboot:
+
        TEXT HELP
 
+
                Boot the Archlinux (i686) live medium (Using NFS)
mkpxelinux -c=/etc/mkpxelinux.conf
+
                It allows you to install Archlinux or perform system maintenance
 
+
        ENDTEXT
Montez archboot-iso et copier le contenue du répertoire isolinx dans /var/tftpboot, écraser les fichiers existants:
+
        MENU LABEL Archlinux (32-bit) (NFS)
 
+
        LINUX path/to/arch/boot/i686/vmlinuz
mount -o loop /archboot.iso /mnt/iso
+
        INITRD path/to/arch/boot/i686/archiso.img
cp -a /mnt/iso/isolinux/* /var/tftpboot/
+
        # chemins relatifs à la racine de votre serveur TFTP
 
+
        # -- mais si vous lisez ceci, c'est que vous vous y connaissez un peu déjà ;-)
Ajustez pxelinux cfg (utilisez isolinux.cfg fournit avec archboot):
+
        APPEND archisobasedir=arch archiso_nfs_srv=<IP serveur NFS>:/path/vers/l/iso/extraite
 
+
        # IP et chemin à adapter, bien entendu
mv /var/tftpboot/isolinux.cfg /var/tftpboot/pxelinux.cfg/default
+
        IPAPPEND 3</nowiki>}}
 
+
Avec bien sûr une entrée semblable pour {{Ic|x86_64}}. Et pour être sûr de ne pas faire de bêtises :
== Configurer host.allow ==
+
  {{Command|name=ls /path/vers/l/iso/extraite|output=EFI/     arch/     isolinux/ loader/}}
 
+
{{Note|Il peut arriver que le PXE kernel panic car le driver pour la carte ethernet n'est pas chargé lors du boot. Le rédacteur n'a pas encore résolu ce souci.}}
Ajouter les enregistrement suivant à votre fichier /etc/hosts.allow :
 
 
 
  # /etc/hosts.allow
 
tftpd: ALL
 
in.tftpd: ALL
 
 
 
Votre installateur réseau Arch Linux est maintenant prêt.
 
 
 
= Démarrer l'installation =
 
 
 
Maintenant assurons nous que les démons dhcp et tftpd tournent sur le serveur.
 
# /etc/rc.d/tftpd start
 
# /etc/rc.d/dhcpd start
 
 
 
démarrer votre machine cible par PXE ( habituellement quelque chose comme F12 (sur les Dells) ou F11 (sur les Supermicro), ou/et activez la fonction dans le BIOS).
 
 
 
Lorsque vous obtenez le prompt PXEBoot, écrivez 'arch' ou pressez Entrée pour démarrer l'installateur. L'installation devrait maintenant progresser de la même manière que si vous aviez démarré du CD. Vous pouvez continuer l'installation en suivant Le [[Official Arch Linux Install Guide (Français)]] ou [[Beginners' Guide (Français)]].
 
 
 
c'est tout!
 
 
 
[[Catégorie:Installation]]
 
[[Catégorie:Howto]]
 
[[Category:Necessite relecture]]
 

Version actuelle datée du 26 juin 2014 à 11:51


Vous possédez un portable non équipé de lecteur de CD et de plus ne vous permet pas de démarrer sur une clé USB... vous vous êtes fait roulés, vous pouvez néanmoins installer Arch Linux à l'aide d'un serveur PXE.

Utilisation

Un utilisateur d'Archlinux propose le paquet archiso-pxe-server qui rend la tâche bien plus simple.

Note : Les IPs de cet article sont bien sûr donné à titre d'exemple, à vous de les modifier par celles que vous avez.

Depuis l'environnement d'installation

Démarrer sur la dernière image d'installation, se connecter, puis:

ifconfig eth0 192.168.0.7
route add default gw 192.168.0.1
echo nameserver 192.168.0.1 > /etc/resolv.conf
pacman -Sy dnsmasq nbd
wget http://aur.archlinux.org/packages/archiso-pxe-server/archiso-pxe-server.tar.gz -O - | tar zxvf -
cd archiso-pxe-server/
chmod +x archiso-pxe-server
./archiso-pxe-server

Depuis un environnement déjà installé

pacman -S dnsmasq nbd 
wget http://aur.archlinux.org/packages/archiso-pxe-server/archiso-pxe-server.tar.gz -O - | tar zxvf -
cd archiso-pxe-server/
chmod +x archiso-pxe-server
./archiso-pxe-server -s archlinux-2010.05-core-i686.iso
Note : Ne pas hésiter à regarder le script pour plus d'informations.


Une fois le serveur lancé, il n'y a plus qu'à démarrer la machine sur laquelle vous voulez installer depuis le réseau et poursuivre avec la page d'installation.

Depuis un serveur PXE

En admettant que vous disposiez déjà de l'infrastructure pour un serveur PXE fonctionnel (serveur DHCP, TFTP et --dans le cas d'Archlinux-- NFS), voici la méthode :

  1. il faut télécharger la dernière iso ;
  2. l'extraire (tar xvf ou monter l'image en loop puis la copier)
  3. proposer le noyau (/arch/boot/<architecture>/vmlinuz) et l'initramfs (/arch/boot/<architecture>/archiso.img) en TFTP ;
  4. proposer le reste du live en NFS.

La configuration de pxelinux a donc l'air de ceci :

Fichier: archlinux.cfg
LABEL arch32_nfs
        TEXT HELP
                Boot the Archlinux (i686) live medium (Using NFS)
                It allows you to install Archlinux or perform system maintenance
        ENDTEXT
        MENU LABEL Archlinux (32-bit) (NFS)
        LINUX path/to/arch/boot/i686/vmlinuz
        INITRD path/to/arch/boot/i686/archiso.img
        # chemins relatifs à la racine de votre serveur TFTP
        # -- mais si vous lisez ceci, c'est que vous vous y connaissez un peu déjà ;-)
        APPEND archisobasedir=arch archiso_nfs_srv=<IP serveur NFS>:/path/vers/l/iso/extraite
        # IP et chemin à adapter, bien entendu
        IPAPPEND 3

Avec bien sûr une entrée semblable pour x86_64. Et pour être sûr de ne pas faire de bêtises :

$ ls /path/vers/l/iso/extraite
EFI/      arch/     isolinux/ loader/
Note : Il peut arriver que le PXE kernel panic car le driver pour la carte ethernet n'est pas chargé lors du boot. Le rédacteur n'a pas encore résolu ce souci.