J'ai suivi ce didacticiel afin de transformer ma raspberry Pi 4B / 8GB en serveur de démarrage réseau :
--> https://www.raspberrypi.org/documentati ... utorial.md
Je me suis acheté une carte micro SD de 64 Go pour réaliser ce serveur de démarrage réseau.
Je dois être doué car au premier essai, j'ai pu me connecter à ma raspberry pi 3B+ (client).
Quelques définitions, ça put toujours servir :
--> TFTP : Trivial File Transfer Protocol.
--> PXE : Preboot Execution Environment.
--> NFS : Network File System.
Le matériel que j'ai utilisé est :
--> trois câbles Ethernet, dont l'un est branché sur ma box sfr.
--> un switch Ethernet.
--> deux adaptateurs d'alimentation 5V / 3A pour les raspberry.
--> un serveur (RPi 4B / 8GB).
--> un client (RPi 3B+).
--> mon ordinateur windows.
Remarque importante : le démarrage (boot) ainsi que les connexions se font par Ethernet et non en wifi.
Voici quelques modifications que j'ai apporté sur ma carte micro SD suivant le didacticiel ci-dessus :
a) j'ai créé un répertoire général de nom "/pxe".
J'y ai placé les deux répertoires suivants, comme indiqué dans le didacticiel :
--> /pxe/nfs/client_01
--> /pxe/tftpboot
b) l'adresse ipv4 (eth0) du serveur (RPi 4B / 8GB) est 192.168.1.75.
l'adresse ipv4 (eth0) du client (RPi 3B+) est 192.168.1.73.
L'adresse de la passerelle (box sfr) est 192.168.1.1, ainsi que celle du DNS.
c) pour le fichier dnsmasq.conf, je dois mettre l'adresse de diffusion : 192.168.1.255.
Je dois modifier le chemin en : "tftp-root=/pxe/tftpboot".
d) dans le fichier /pxe/tftpboot/cmdline.txt, je modifie la ligne comme indiqué dans le didacticiel, de la façon suivante :
Code : Tout sélectionner
console=serial0,115200 console=tty1 root=/dev/nfs nfsroot=192.168.1.75:/pxe/nfs/client_01,vers=4.1,proto=tcp rw ip=dhcp elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles
Et "/pxe/nfs/client_01" le chemin vers l'OS, chez moi.
e) modification du fichier "/pxe/nfs/etc/fstab" :
Code : Tout sélectionner
proc /proc proc defaults 0 0
192.168.1.75:/pxe/tftpboot /boot nfs defaults,vers=4.1,proto=tcp 0 0
Code : Tout sélectionner
/pxe/tftpboot> tail -F /var/log/daemon.log
May 19 15:12:54 raspberrypi dnsmasq-tftp[1237]: erreur 0 Early terminate reçu de 192.168.1.73
May 19 15:12:54 raspberrypi dnsmasq-tftp[1237]: impossible d'envoyer /pxe/tftpboot/kernel8.img à 192.168.1.73
May 19 15:12:54 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/armstub8-32.bin non trouvé
May 19 15:12:54 raspberrypi dnsmasq-tftp[1237]: erreur 0 Early terminate reçu de 192.168.1.73
May 19 15:12:54 raspberrypi dnsmasq-tftp[1237]: impossible d'envoyer /pxe/tftpboot/kernel7.img à 192.168.1.73
May 19 15:12:57 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/kernel7.img à 192.168.1.73
May 19 15:13:06 raspberrypi dnsmasq-dhcp[1237]: 1025225553 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:06 raspberrypi dnsmasq-dhcp[1237]: 1025225553 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:06 raspberrypi dnsmasq-dhcp[1237]: 1025225553 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:06 raspberrypi dnsmasq-dhcp[1237]: 1025225553 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: 856928484 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: 856928484 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: le client 856928484 fourni le nom : raspberrypi
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: 856928484 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: 856928484 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: le client 856928484 fourni le nom : raspberrypi
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: 856928484 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: 856928484 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: le client 856928484 fourni le nom : raspberrypi
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: 856928484 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: 856928484 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 19 15:13:16 raspberrypi dnsmasq-dhcp[1237]: le client 856928484 fourni le nom : raspberrypi
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: 2054649681 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: 2054649681 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: le client 2054649681 fourni le nom : raspberrypi
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: 2054649681 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: 2054649681 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: le client 2054649681 fourni le nom : raspberrypi
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: 2054649681 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: 2054649681 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: le client 2054649681 fourni le nom : raspberrypi
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: 2054649681 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: 2054649681 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 19 15:13:21 raspberrypi dnsmasq-dhcp[1237]: le client 2054649681 fourni le nom : raspberrypi
^C
/pxe/tftpboot>
Voici mes questions :
1) j'ai fait le test avec un seul client à savoir ma RPi 3B+.
J'ai pu la mettre à jour et aussi faire la création d'un fichier que j'ai vu depuis le serveur dans le répertoire "/pxe/nfs/client_01/root".
Ce qui signifie que toutes les modifications du client sont automatiquement retranscrites dans le serveur.
Si maintenant, je désire avoir plusieurs clients où chacun aura son propre environnement, comme dois-je procéder ?
Je n'ai rien trouvé sur quoi modifier afin d'attribuer telle machine vers tel environnement.
Je suppose que cela doit se faire dans le fichier "/etc/dnsmasq.conf".
L'idée est d'indiquer le numéro de série de mes raspberry et de lui indiquer le répertoire "/pxe/nfs/client_??" lui correspondant.
A suivre.
@+