PXE / Boot Server !

Vous avez réalisé ou vous voulez réaliser un truc impensable avec votre Raspberry Pi ? Cet endroit est pour vous...

Modérateur : Francois

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

PXE / Boot Server !

Message par Artemus24 » mer. 19 mai 2021 16:28

Salut à tous.

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
Comme je l'ai plus haut, 192.168.1.75 est l'adresse ip (eth0) du serveur (RPi 4B / 8GB).
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
f) voici le résultat sur le serveur au démarrage du client :

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>
Comme on le constate, il y a eu quelques erreurs au démarrage qui n'ont pas empêché le client de booter.

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.
@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

Re: PXE / Boot Server !

Message par Artemus24 » mer. 19 mai 2021 17:08

Salut à tous.

Test du client sur la raspberry pi 4B / 8GB (oui, j'en ai une seconde).

a) modification du bootloader du client (raspberry pi 4B / 8GB).
Avec une carte micro SD, je me suis connecté à ma seconde raspberry pi 4B / 8GB.

J'ai modifié le "boot_order" par la commande :

Code : Tout sélectionner

sudo  -E  rpi-eeprom-config  --edit
J'ai mis :

Code : Tout sélectionner

BOOT_ORDER=0xf21
Puis pour visualiser les modifications, je fais :

Code : Tout sélectionner

reboot
et enfin :

Code : Tout sélectionner

~> rpi-eeprom-config
[all]
BOOT_UART=0
WAKE_ON_GPIO=1
POWER_OFF_ON_HALT=0
DHCP_TIMEOUT=45000
DHCP_REQ_TIMEOUT=4000
TFTP_FILE_TIMEOUT=30000
ENABLE_SELF_UPDATE=1
DISABLE_HDMI=0
BOOT_ORDER=0xf21

~>
Tout est ok !

b) branchement du client sur le switch éthernet.
Depuis le serveur, je visualise la connexion et le démarrage du client :

Code : Tout sélectionner

~> tail -F /var/log/daemon.log
May 19 16:50:38 raspberrypi dnsmasq-dhcp[1237]: 834250664 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.4.83-v7l+:armv7l:BCM2711
May 19 16:50:38 raspberrypi dnsmasq-dhcp[1237]: le client 834250664 fourni le nom : raspberrypi
May 19 16:52:40 raspberrypi nmbd[614]: [2021/05/19 16:52:40.893780,  0] ../source3/nmbd/nmbd_browsesync.c:354(find_domain_master_name_query_fail)
May 19 16:52:40 raspberrypi nmbd[614]:   find_domain_master_name_query_fail:
May 19 16:52:40 raspberrypi nmbd[614]:   Unable to find the Domain Master Browser name CONSTELLATIONS<1b> for the workgroup CONSTELLATIONS.
May 19 16:52:40 raspberrypi nmbd[614]:   Unable to sync browse lists in this workgroup.
May 19 16:52:40 raspberrypi nmbd[614]: [2021/05/19 16:52:40.894808,  0] ../source3/nmbd/nmbd_browsesync.c:354(find_domain_master_name_query_fail)
May 19 16:52:40 raspberrypi nmbd[614]:   find_domain_master_name_query_fail:
May 19 16:52:40 raspberrypi nmbd[614]:   Unable to find the Domain Master Browser name CONSTELLATIONS<1b> for the workgroup CONSTELLATIONS.
May 19 16:52:40 raspberrypi nmbd[614]:   Unable to sync browse lists in this workgroup.
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 Classe de vendeur ('Vendor Class') : PXEClient:Arch:00000:UNDI:002001
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 PXE(eth0) dc:a6:32:c5:29:37 proxy
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 options: eth0
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 réponse broadcast
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size:  1 option: 53 message-type  2
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size:  4 option: 54 server-identifier  192.168.1.75
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size: 17 option: 97 client-machine-id  00:52:50:69:34:14:31:d0:00:32:c5:29:37:b7...
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size: 32 option: 43 vendor-encap  06:01:03:0a:04:00:50:58:45:09:14:00:00:11...
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 Classe de vendeur ('Vendor Class') : PXEClient:Arch:00000:UNDI:002001
May 19 16:55:58 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/55ae1fb7/start4.elf non trouvé
May 19 16:55:58 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/55ae1fb7/start.elf non trouvé
May 19 16:55:58 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/config.txt à 192.168.1.77
May 19 16:55:58 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/pieeprom.sig non trouvé
May 19 16:55:58 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/recover4.elf non trouvé
May 19 16:55:58 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/recovery.elf non trouvé
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 Classe de vendeur ('Vendor Class') : PXEClient:Arch:00000:UNDI:002001
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 PXE(wlan0) dc:a6:32:c5:29:37 proxy
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 options: wlan0
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 réponse broadcast
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size:  1 option: 53 message-type  2
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size:  4 option: 54 server-identifier  192.168.1.74
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size: 17 option: 97 client-machine-id  00:52:50:69:34:14:31:d0:00:32:c5:29:37:b7...
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sent size: 32 option: 43 vendor-encap  06:01:03:0a:04:00:50:58:45:09:14:00:00:11...
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:55:58 raspberrypi dnsmasq-dhcp[1237]: 1704990588 Classe de vendeur ('Vendor Class') : PXEClient:Arch:00000:UNDI:002001
May 19 16:55:59 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/start4.elf à 192.168.1.77
May 19 16:56:00 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/fixup4.dat à 192.168.1.77
May 19 16:56:00 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/recovery.elf non trouvé
May 19 16:56:00 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/config.txt à 192.168.1.77
May 19 16:56:00 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/dt-blob.bin non trouvé
May 19 16:56:00 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/recovery.elf non trouvé
May 19 16:56:00 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/config.txt à 192.168.1.77
May 19 16:56:00 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/bootcfg.txt non trouvé
May 19 16:56:00 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/bcm2711-rpi-4-b.dtb à 192.168.1.77
May 19 16:56:00 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/overlays/overlay_map.dtb à 192.168.1.77
May 19 16:56:01 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/config.txt à 192.168.1.77
May 19 16:56:01 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/overlays/vc4-fkms-v3d.dtbo à 192.168.1.77
May 19 16:56:01 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/cmdline.txt à 192.168.1.77
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/recovery8.img non trouvé
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/recovery8-32.img non trouvé
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/recovery7l.img non trouvé
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/recovery7.img non trouvé
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/recovery.img non trouvé
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/kernel8-32.img non trouvé
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: erreur 0 Early terminate reçu de 192.168.1.77
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: impossible d'envoyer /pxe/tftpboot/kernel8.img à 192.168.1.77
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: fichier /pxe/tftpboot/armstub8-32-gic.bin non trouvé
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: erreur 0 Early terminate reçu de 192.168.1.77
May 19 16:56:02 raspberrypi dnsmasq-tftp[1237]: impossible d'envoyer /pxe/tftpboot/kernel7l.img à 192.168.1.77
May 19 16:56:03 raspberrypi dnsmasq-tftp[1237]: envoyé /pxe/tftpboot/kernel7l.img à 192.168.1.77
May 19 16:56:13 raspberrypi dnsmasq-dhcp[1237]: 334160507 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:13 raspberrypi dnsmasq-dhcp[1237]: 334160507 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:13 raspberrypi dnsmasq-dhcp[1237]: 334160507 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:13 raspberrypi dnsmasq-dhcp[1237]: 334160507 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:19 raspberrypi dnsmasq-dhcp[1237]: 2984655640 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:19 raspberrypi dnsmasq-dhcp[1237]: 2984655640 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:19 raspberrypi dnsmasq-dhcp[1237]: le client 2984655640 fourni le nom : raspberrypi
May 19 16:56:19 raspberrypi dnsmasq-dhcp[1237]: 2984655640 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:19 raspberrypi dnsmasq-dhcp[1237]: 2984655640 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:19 raspberrypi dnsmasq-dhcp[1237]: le client 2984655640 fourni le nom : raspberrypi
May 19 16:56:20 raspberrypi dnsmasq-dhcp[1237]: 1650879951 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:20 raspberrypi dnsmasq-dhcp[1237]: 1650879951 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:20 raspberrypi dnsmasq-dhcp[1237]: le client 1650879951 fourni le nom : raspberrypi
May 19 16:56:20 raspberrypi dnsmasq-dhcp[1237]: 1650879951 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:20 raspberrypi dnsmasq-dhcp[1237]: 1650879951 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:20 raspberrypi dnsmasq-dhcp[1237]: le client 1650879951 fourni le nom : raspberrypi
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 2042151150 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 2042151150 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: le client 2042151150 fourni le nom : raspberrypi
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 4098159112 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 4098159112 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: le client 4098159112 fourni le nom : raspberrypi
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 4098159112 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 4098159112 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: le client 4098159112 fourni le nom : raspberrypi
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 2042151150 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 2042151150 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: le client 2042151150 fourni le nom : raspberrypi
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 4098159112 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 4098159112 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: le client 4098159112 fourni le nom : raspberrypi
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 4098159112 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: 4098159112 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7l+:armv7l:BCM2711
May 19 16:56:25 raspberrypi dnsmasq-dhcp[1237]: le client 4098159112 fourni le nom : raspberrypi
^C
~>
A priori, c'est ok !

c) tentative de connexion au client (raspberry pi 4B / 8GB).
L'adresse ip (eth0) est cette fois-ci 192.168.1.77.
J'utilise putty pour me connecter depuis mon ordinateur windows.
Résultat : la connexion s'est bien faite.

Pour l'instant, pas d'autres questions.

A suivre.
@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

Re: PXE / Boot Server !

Message par Artemus24 » dim. 23 mai 2021 14:33

Salut à tous.

Suite et fin du démarrage en réseau.
Je réponds à ma question dont le but est de créer un environnement propre à chaque raspberry.

A lire : https://www.raspberrypi.org/documentati ... des/net.md
Il y a le descriptif du fonctionnement du démarrage de la raspberry en mode boot réseau.

Il faut faire une distinction entre la RPi 4B / 8GB et la RPi 3B+, puisque le comportement est différent.

I) la Raspberry Pi 4B / 8GB.

L'identification se fait à partir du "serial number" que l'on obtient en faisant :

Code : Tout sélectionner

grep Serial /proc/cpuinfo | cut -d ' ' -f 2 | cut -c 8-16
Chez moi, voici ce que j'obtiens :

Code : Tout sélectionner

> grep Serial /proc/cpuinfo
Serial          : 100000008356c021
>[code]
Et en utilisant la commande ci-dessus :
[code]> grep Serial /proc/cpuinfo | cut -d ' ' -f 2 | cut -c 8-16
8356c021
> 
Il faut récupérer les huits derniers chiffres du "serial number".

Ensuite, il faut créer un répertoire "boot", le même que celui que vous avez dans votre carte micro SD, en le nommant ainsi :
--> /pxe/tftpboot/8356c021
et vous y placez son contenu.

En conséquence de quoi, vous devez modifier :

I-a) le fichier dnsmasq.conf afin de mettre que le répertoire racine, comme ci-après :

Code : Tout sélectionner

port=0
dhcp-range=10.42.0.255,proxy
log-dhcp
enable-tftp
tftp-root=/tftpboot
pxe-service=0,"Raspberry Pi Boot"
I-b) afin d'être en phase en le répertoire "/boot" et le répertoire "/rootfs", nommez les avec le même "serial number".
--> /pxe/tftpboot/8356c021
et
--> /pxe/nfs/8356c021

I-c) modifier le chemin d'accès dans le fichier "/pxe/tftpboot/8356c021/cmdline.txt" :

Code : Tout sélectionner

console=serial0,115200 console=tty1 root=/dev/nfs nfsroot=192.168.1.75:/pxe/nfs/8356c021,vers=4.1,proto=tcp rw ip=dhcp elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles

I-d) modifier aussi le chemin d'accès dans le fichier "/pxe/nfs/8356c021/etc/fstab" :
[code]proc                            /proc           proc    defaults                        0       0
192.168.1.75:/pxe/tftp/8356c021 /boot           nfs     defaults,vers=4.1,proto=tcp     0       0
tmpfs                           /tmp            tmpfs   defaults,noatime                0       0
tmpfs                           /var/log        tmpfs   defaults,noatime                0       0
tmpfs                           /var/tmp        tmpfs   defaults,noatime                0       0

~
I-d) modifier aussi le fichier "/etc/exports" :

Code : Tout sélectionner

# /etc/exports: the access control list for filesystems which may be exported
#               to NFS clients.  See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
/pxe/nfs/8356c021      *(rw,sync,no_subtree_check,no_root_squash)
/pxe/tftpboot/8356c021 *(rw,sync,no_subtree_check,no_root_squash)

~
Normalement, en utilisant "tail -F /var/log/daemon.log", vous devez voir le chemin d'accès au répertoire boot.

II) la Raspberry Pi 3B+.

Elle ne gère pas le "serial number" !
Dans ce cas, le répertoire d'accès est celui-ci indiqué dans le didacticiel qui est le répertoire "/pxe/tftpboot".

Vous devez recopier le contenu du répertoire "/boot" dans le répertoire "/pxe/tftpboot".
Si vous utilisez aussi la RPi 4B / 8GB, vous aurez un sous répertoire du nom de son "serial number".

@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

Re: PXE / Boot Server !

Message par Artemus24 » dim. 23 mai 2021 17:15

Salut à tous.

Pour les tests, j'ai vérifié que le démarrage en réseau se fait correctement. Voici celui de la raspberry pi 3B+ :

Code : Tout sélectionner

~> tail -F /var/log/daemon.log
May 23 17:00:29 raspberrypi systemd[785]: Listening on GnuPG cryptographic agent and passphrase cache.
May 23 17:00:29 raspberrypi systemd[785]: Listening on GnuPG cryptographic agent and passphrase cache (access for web browsers).
May 23 17:00:29 raspberrypi systemd[785]: Listening on GnuPG network certificate management daemon.
May 23 17:00:29 raspberrypi systemd[785]: Listening on D-Bus User Message Bus Socket.
May 23 17:00:29 raspberrypi systemd[785]: Reached target Sockets.
May 23 17:00:29 raspberrypi systemd[785]: Reached target Basic System.
May 23 17:00:29 raspberrypi systemd[785]: Reached target Default.
May 23 17:00:29 raspberrypi systemd[785]: Startup finished in 132ms.
May 23 17:00:29 raspberrypi systemd[1]: Started User Manager for UID 0.
May 23 17:00:29 raspberrypi systemd[1]: Started Session 3 of user root.

May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 Classe de vendeur ('Vendor Class') : PXEClient:Arch:00000:UNDI:002001
May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 PXE(eth0) b8:27:eb:c7:b3:eb proxy
May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 options: eth0
May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 réponse broadcast
May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  1 option: 53 message-type  2
May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  4 option: 54 server-identifier  192.168.1.75
May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size: 17 option: 97 client-machine-id  00:eb:b3:c7:d9:eb:b3:c7:d9:eb:b3:c7:d9:eb...
May 23 17:04:22 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size: 32 option: 43 vendor-encap  06:01:03:0a:04:00:50:58:45:09:14:00:00:11...
May 23 17:04:22 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/bootcode.bin à 192.168.1.73
May 23 17:04:22 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/bootsig.bin non trouvé
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 Classe de vendeur ('Vendor Class') : PXEClient:Arch:00000:UNDI:002001
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 PXE(eth0) b8:27:eb:c7:b3:eb proxy
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 options: eth0
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 réponse broadcast
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  1 option: 53 message-type  2
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  4 option: 54 server-identifier  192.168.1.75
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size: 17 option: 97 client-machine-id  00:eb:b3:c7:d9:eb:b3:c7:d9:eb:b3:c7:d9:eb...
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size: 32 option: 43 vendor-encap  06:01:03:0a:04:00:50:58:45:09:14:00:00:11...
May 23 17:04:23 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/autoboot.txt non trouvé
May 23 17:04:23 raspberrypi dnsmasq-tftp[473]: erreur 0 Early terminate reçu de 192.168.1.73
May 23 17:04:23 raspberrypi dnsmasq-tftp[473]: impossible d'envoyer /pxe/tftp/d9c7b3eb/start.elf à 192.168.1.73
May 23 17:04:23 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/config.txt à 192.168.1.73
May 23 17:04:23 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/recovery.elf non trouvé
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 Classe de vendeur ('Vendor Class') : PXEClient:Arch:00000:UNDI:002001
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 PXE(wlan0) b8:27:eb:c7:b3:eb proxy
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 options: wlan0
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 réponse broadcast
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  1 option: 53 message-type  2
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  4 option: 54 server-identifier  192.168.1.74
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size: 17 option: 97 client-machine-id  00:eb:b3:c7:d9:eb:b3:c7:d9:eb:b3:c7:d9:eb...
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size: 32 option: 43 vendor-encap  06:01:03:0a:04:00:50:58:45:09:14:00:00:11...
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 Classe de vendeur ('Vendor Class') : PXEClient:Arch:00000:UNDI:002001
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 PXE(wlan0) b8:27:eb:c7:b3:eb proxy
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 options: wlan0
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 réponse broadcast
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  1 option: 53 message-type  2
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  4 option: 54 server-identifier  192.168.1.74
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size: 17 option: 97 client-machine-id  00:eb:b3:c7:d9:eb:b3:c7:d9:eb:b3:c7:d9:eb...
May 23 17:04:23 raspberrypi dnsmasq-dhcp[473]: 653460281 sent size: 32 option: 43 vendor-encap  06:01:03:0a:04:00:50:58:45:09:14:00:00:11...
May 23 17:04:24 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/start.elf à 192.168.1.73
May 23 17:04:24 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/fixup.dat à 192.168.1.73
May 23 17:04:24 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/recovery.elf non trouvé
May 23 17:04:24 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/config.txt à 192.168.1.73
May 23 17:04:24 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/dt-blob.bin non trouvé
May 23 17:04:24 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/recovery.elf non trouvé
May 23 17:04:24 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/config.txt à 192.168.1.73
May 23 17:04:25 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/bootcfg.txt non trouvé
May 23 17:04:25 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/bcm2710-rpi-3-b-plus.dtb à 192.168.1.73
May 23 17:04:25 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/overlays/overlay_map.dtb à 192.168.1.73
May 23 17:04:25 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/config.txt à 192.168.1.73
May 23 17:04:25 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/cmdline.txt à 192.168.1.73
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/recovery8.img non trouvé
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/recovery8-32.img non trouvé
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/recovery7.img non trouvé
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/recovery.img non trouvé
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/kernel8-32.img non trouvé
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: erreur 0 Early terminate reçu de 192.168.1.73
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: impossible d'envoyer /pxe/tftp/d9c7b3eb/kernel8.img à 192.168.1.73
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: fichier /pxe/tftp/d9c7b3eb/armstub8-32.bin non trouvé
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: erreur 0 Early terminate reçu de 192.168.1.73
May 23 17:04:26 raspberrypi dnsmasq-tftp[473]: impossible d'envoyer /pxe/tftp/d9c7b3eb/kernel7.img à 192.168.1.73
May 23 17:04:30 raspberrypi dnsmasq-tftp[473]: envoyé /pxe/tftp/d9c7b3eb/kernel7.img à 192.168.1.73
May 23 17:04:39 raspberrypi dnsmasq-dhcp[473]: 1939853912 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:39 raspberrypi dnsmasq-dhcp[473]: 1939853912 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:39 raspberrypi dnsmasq-dhcp[473]: 1939853912 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:39 raspberrypi dnsmasq-dhcp[473]: 1939853912 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:48 raspberrypi dnsmasq-dhcp[473]: 629045075 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:48 raspberrypi dnsmasq-dhcp[473]: 629045075 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 23 17:04:48 raspberrypi dnsmasq-dhcp[473]: le client 629045075 fourni le nom : raspberrypi
May 23 17:04:48 raspberrypi dnsmasq-dhcp[473]: 629045075 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:48 raspberrypi dnsmasq-dhcp[473]: 629045075 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 23 17:04:48 raspberrypi dnsmasq-dhcp[473]: le client 629045075 fourni le nom : raspberrypi
May 23 17:04:59 raspberrypi dnsmasq-dhcp[473]: 205155487 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:59 raspberrypi dnsmasq-dhcp[473]: 205155487 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 23 17:04:59 raspberrypi dnsmasq-dhcp[473]: le client 205155487 fourni le nom : raspberrypi
May 23 17:04:59 raspberrypi dnsmasq-dhcp[473]: 205155487 sous-réseaux DHCP disponibles : 192.168.1.255/255.255.255.0
May 23 17:04:59 raspberrypi dnsmasq-dhcp[473]: 205155487 Classe de vendeur ('Vendor Class') : dhcpcd-8.1.2:Linux-5.10.17-v7+:armv7l:BCM2835
May 23 17:04:59 raspberrypi dnsmasq-dhcp[473]: le client 205155487 fourni le nom : raspberrypi


May 23 17:05:16 raspberrypi nmbd[590]: [2021/05/23 17:05:16.873319,  0] ../source3/nmbd/nmbd_become_lmb.c:418(become_local_master_fail2)
May 23 17:05:16 raspberrypi nmbd[590]:   become_local_master_fail2: failed to register name CONSTELLATIONS<1d> on subnet 192.168.1.74. Failed to become a local master browser.
May 23 17:05:16 raspberrypi nmbd[590]: [2021/05/23 17:05:16.875279,  0] ../source3/nmbd/nmbd_namelistdb.c:320(standard_fail_register)
May 23 17:05:16 raspberrypi nmbd[590]:   standard_fail_register: Failed to register/refresh name CONSTELLATIONS<1d> on subnet 192.168.1.74
Il est possible de sélectionner le démarrage réseau à partir du "serial number". Comment ?
Il faut mettre dans le répertoire "/pxe/tftp/" seulement le fichier "bootcode.bin" et seulement lui.
Vous aurez aussi deux répertoires "boot" nommé en fonction du "serial number" à l'identique de ce que j'ai dit au sujet de la raspberry pi 4B / 8GB.

J'ai fait les tests et je considère que le sujet consacré à PXE, c'est-à-dire au démarrage par réseau est résolu.

Si vous avez des questions, je suis preneur. :)

Cordialement.
Artemus24.
@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

loulou75015
Messages : 1
Enregistré le : mar. 12 avr. 2022 14:20

Re: PXE / Boot Server !

Message par loulou75015 » mar. 12 avr. 2022 14:26

Bonjour,

Merci beaucoup pour ton monologue, grâce à toi j'ai réussi mettre en place le boot réseau!

Belle journée,

Louis

PS : je me suis même inscrit sur le forum pour te remercier :D

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

Re: PXE / Boot Server !

Message par Artemus24 » mar. 12 avr. 2022 16:03

Salut loulou75015.
loulou75015 a écrit :Merci beaucoup pour ton monologue
On nomme cela aussi un didacticiel ou tutoriel. :lol:

Cordialement.
Artemus24.
@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

flatounet
Messages : 8
Enregistré le : mer. 21 déc. 2016 11:29

Re: PXE / Boot Server !

Message par flatounet » mar. 26 avr. 2022 00:02

coucou ,

je regarde regulierement ce tuto ,et me semble pas trop simple..

j'espere ne pas avoir posé les meme questions
( comme j'ai ces questions ,mais l'enssemble ne me semble pas trop simple )

tu indique avoir utilisé un rpi 4b 8G
-les 8G c'est le materiel que tu avais sous la main ?
ou le taff de serveur pxe utilise bcp de memoire ?

-dans le tuto je vois : que tu indique un nom 'client_01' et quiet splash plymouth.ignore-serial-consoles ( dans un 1er temp * )
tu l'ignore car c'est un raspberry pi 3 et que cela n'est pas supporté ?

dans le sens ,je regarde a faire un tel serveur ,car plusieur raspberry ,et voudrai limité les cartes micro sd ( durée de vie trop courte )

tu édite le rpi-eeprom-config ,pas de soucis ici

et là le 23 mai , " Il faut récupérer les huits derniers chiffres du "serial number". "

Ensuite, il faut créer un répertoire "boot", le même que celui que vous avez dans votre carte micro SD, en le nommant ainsi :
--> /pxe/tftpboot/8356c021 :roll: j'ai un peu de mal a capté ,

tu nome ton raspberry 3 en client_1 puis parle de sérial ,alors que c'est censé ne pas etre supporté. :mrgreen: désolé je decroche
"" plymouth.ignore-serial-consoles "" ( dans la ligne de code du 19 mai )

apres tu créé les dossier locaux dans cmdline.txt. :roll: bon j'ai decroché ,mais sa semble ok

une petite aide sur ce que je n'ai pas compris ?
merci
etant gros noob , comment cela ce passe pour les iso ?

si sa boot et que j'ai les commande ,installé ad guard en ligne de commande devrai le faire.
reste j'utilise des image a gravé sur carte sd ,comment cela ce passe pour l'installé sur le serveur ?

je pense que je doit extraire l'archive ,et balancé dans le dossier pxe/tftpboot/8356c021 ?
:mrgreen:
désolé gros newbie ici ,
si jamais tu a expérimenté un poil ;)

je sui en sous reseau ( 192.168.1.x ,et le dhcp est configuré sous ipfire )
donc je ne sait pas trop encore sur cette etape

si jamais ta une idée ou des info / expériance ;)

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

Re: PXE / Boot Server !

Message par Artemus24 » mar. 26 avr. 2022 06:45

Salut Flatounet.
Flatounet a écrit :-les 8G c'est le matériel que tu avais sous la main ?
C'est ce que j'ai à ma disposition, deux RPi 4B / 8GB et deux RPi 3B+.
Flatounet a écrit :tu l'ignore car c'est un raspberry pi 3 et que cela n'est pas supporté ?
J'ai suivi le didacticiel que j'ai indiqué. j'ai reproduit le même exemple.
J'ai fait progressivement les tests et je n'avais pas toutes les informations à ma disposition au moment de l'écriture des messages.

Ce répertoire se nomme "client-01" car c'est l'exemple donnée par le didacticiel.
Par la suite, tu remplaces ce "client-01" par le numéro de série de ta raspberry Pi 3B+ ou 4B.

Cela ne fonctionne pas avec la Raspberry Pi 2B.
Flatounet a écrit :Ensuite, il faut créer un répertoire "boot", le même que celui que vous avez dans votre carte micro SD, en le nommant ainsi :
--> /pxe/tftpboot/8356c021 :roll: j'ai un peu de mal a capté ,
Dans une carte micro SD normal, tu as deux partitions, de noms "Boot" et RootFS".
Tu dois créer la même organisation dans le PXE que ce qui est présent dans ta carte micro SD.
Le répertoire "tftboot" est l'équivalent de la partition "/boot".
Et le répertoire "nfs" est l'équivalent de la partition "/rootfs".
Jusque là, je pense que tu as compris.

Maintenant, tu as deux Raspberry Pi que tu vas identifier par leur numéro de série.
Tu vas reproduire dans ces répertoires, la même arborescence que tu as dans tes cartes micro SD.
Tu mets le même numéro de série, coté "/pxe/tftboot" et /pxe/nfs". Par exemple :
--> RPi 4B : "/pxe/tftboot/12345678" & "/pxe/nfs/12345678".
--> RPi 3B+ : "/pxe/tftboot/98765432" & "/pxe/nfs/98765432".

Ainsi dans "/pxe/tftboot/12345678" tu as la partition "/Boot" de ta raspberry Pi numero de serie : 12345678.
Ainsi dans "/pxe/nfs/12345678" tu as la partition "/RootFS" de ta raspberry Pi numero de serie : 12345678.

Idem pour l'autre Raspberry avec le numéro de série : 98765432.
Flatounet a écrit :tu nommes ton raspberry 3B+ en client_1 puis parle de serial ,alors que c'est censé ne pas être supporté. :mrgreen: désolé je décroche
J'ai fait cela progressivement.
J'ai cru que le numéro de série était supporté que par la RPi 4B et non par la RPi 3B+.
Par la suite, je découvre que la RPi 3B+ fonctionne aussi avec le numéro de serie.
Flatounet a écrit :apres tu créé les dossier locaux dans cmdline.txt. :roll: bon j'ai décroché ,mais sa semble ok
Ce n'est pas évident à comprendre la première fois.

Pour faire le lien entre la partition "/Boot" et la partition"/RootFS", tu es obligé d'indiquer où celle-ci se trouve.
C'est pourquoi, tu dois mettre : "nfsroot=192.168.1.75:/pxe/nfs/client_01".
Maintenant que tu sais identifier tes raspberry, tu remplaces alors ce "client-01" par le numéro de série.
Flatounet a écrit :etant gros noob , comment cela ce passe pour les iso ?
Quand on est débutant, on ne s'attaque pas à quelque chose d'aussi compliquée.
Même moi, j'ai eu du mal à le faire fonctionner.
J'ai dû faire des tas de lectures, de recherches sur le net, ainsi que des tests avant de trouver la solution.

Pour ce qui est de la manipulation de tes raspberry, cela ne change rien.
Si tu veux faire une mise à jour, tu fais comme d'habitude, mais depuis la raspberry cliente, pas depuis le serveur.
Normalement, tu n'as plus rien à faire dans le serveur à partir du moment où ta configuration est définitive.
Flatounet a écrit :j'utilise des image a gravé sur carte sd ,comment cela ce passe pour l'installé sur le serveur ?
Dans le didacticiel, il est indiqué comment faire la recopie.
Pour cela, tu as besoin d'une clef usb pour lire tes cartes micro SD.
Flatounet a écrit :je pense que je dois extraire l'archive ,et balancé dans le dossier pxe/tftpboot/8356c021 ?
:mrgreen:
désolé gros newbie ici ,
A vrai dire, je n'ai pas fait de recopie d'une image iso dans ce contexte si particulier.
Il faut faire attention car ton image est partitionnée alors que dans le serveur, ce sont des répertoires.
Flatounet a écrit :si jamais ta une idée ou des info / expériance ;)
J'ai fait cela, il y a presque un an et depuis, je n'ai pas remis les mains dans le projet.

Cordialement.
Artemus24.
@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

flatounet
Messages : 8
Enregistré le : mer. 21 déc. 2016 11:29

Re: PXE / Boot Server !

Message par flatounet » mar. 26 avr. 2022 18:24

encore merci ;)

j'ai copié collé le topic et la reponse ,
si tu a besoin de nettoyée ;)

je ne vais pas tarder a mis mettre

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

Re: PXE / Boot Server !

Message par Artemus24 » mar. 26 avr. 2022 22:46

Salut Flatounet.

Non aucune raison de faire du nettoyage.
Cela peut servir à quelqu'un d'autre.

Cordialement.
Artemus24.
@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

Répondre

Retourner vers « Utilisateurs avancés »