update
This commit is contained in:
@@ -0,0 +1,5 @@
|
|||||||
|
# Spécifique à la machine qui héberge le serveur PXE (UUID disque, etc.)
|
||||||
|
# généré via `nixos-generate-config`, jamais partagé. C'est aussi pour ça
|
||||||
|
# que le rebuild sur cette machine a besoin de --impure (voir README) :
|
||||||
|
# un flake pur ne voit que les fichiers suivis par git.
|
||||||
|
pxe-server/hardware-configuration.nix
|
||||||
@@ -146,7 +146,15 @@ git clone https://gitea.miniclic.net/Damien/Nixos_Fleet.git /etc/nixos-fleet
|
|||||||
cd /etc/nixos-fleet
|
cd /etc/nixos-fleet
|
||||||
```
|
```
|
||||||
|
|
||||||
## Étape 3 — Éditer 3 valeurs
|
## Étape 3 — Générer le fichier matériel
|
||||||
|
|
||||||
|
Propre à cette machine, jamais commité (voir `.gitignore`).
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo nixos-generate-config --show-hardware-config > pxe-server/hardware-configuration.nix
|
||||||
|
```
|
||||||
|
|
||||||
|
## Étape 4 — Éditer 3 valeurs
|
||||||
|
|
||||||
Fichier : `pxe-server/configuration.nix`
|
Fichier : `pxe-server/configuration.nix`
|
||||||
|
|
||||||
@@ -160,13 +168,15 @@ Fichier : `pxe-server/configuration.nix`
|
|||||||
$EDITOR pxe-server/configuration.nix
|
$EDITOR pxe-server/configuration.nix
|
||||||
```
|
```
|
||||||
|
|
||||||
## Étape 4 — Construire
|
## Étape 5 — Construire
|
||||||
|
|
||||||
|
`hardware-configuration.nix` est gitignored, donc invisible à un flake pur → `--impure` obligatoire ici (même raison que `nixos_cinnamon`).
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo nixos-rebuild switch --flake .#pxe-server
|
sudo nixos-rebuild switch --flake .#pxe-server --impure
|
||||||
```
|
```
|
||||||
|
|
||||||
## Étape 5 — Publier l'image
|
## Étape 6 — Publier l'image
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo systemctl start pxe-publish
|
sudo systemctl start pxe-publish
|
||||||
@@ -175,7 +185,7 @@ sudo systemctl status pxe-publish
|
|||||||
|
|
||||||
Doit finir en "success". Première fois : plusieurs minutes.
|
Doit finir en "success". Première fois : plusieurs minutes.
|
||||||
|
|
||||||
## Étape 6 — Vérifier
|
## Étape 7 — Vérifier
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo systemctl status dnsmasq caddy
|
sudo systemctl status dnsmasq caddy
|
||||||
@@ -186,7 +196,7 @@ curl -I http://<serverIp>/netboot.ipxe
|
|||||||
|
|
||||||
Tout doit répondre sans erreur.
|
Tout doit répondre sans erreur.
|
||||||
|
|
||||||
## Étape 7 — Tester sur 1 PC
|
## Étape 8 — Tester sur 1 PC
|
||||||
|
|
||||||
Démarrer un seul PC en PXE.
|
Démarrer un seul PC en PXE.
|
||||||
|
|
||||||
@@ -219,7 +229,7 @@ sudo systemctl start pxe-publish
|
|||||||
Appliquer une modif de `pxe-server/configuration.nix` :
|
Appliquer une modif de `pxe-server/configuration.nix` :
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo nixos-rebuild switch --flake .#pxe-server
|
sudo nixos-rebuild switch --flake .#pxe-server --impure
|
||||||
```
|
```
|
||||||
|
|
||||||
Voir les logs DHCP/TFTP :
|
Voir les logs DHCP/TFTP :
|
||||||
|
|||||||
@@ -25,6 +25,17 @@ let
|
|||||||
tftpRoot = "/var/lib/tftpboot";
|
tftpRoot = "/var/lib/tftpboot";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
imports = [
|
||||||
|
# Généré sur le serveur réel via `nixos-generate-config`, jamais
|
||||||
|
# committé (voir .gitignore) — spécifique à cette machine.
|
||||||
|
./hardware-configuration.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
# Si le serveur est en BIOS legacy (pas UEFI), remplacer les deux lignes
|
||||||
|
# au-dessus par boot.loader.grub.device = "/dev/sdX";
|
||||||
|
|
||||||
networking.hostName = "pxe-server";
|
networking.hostName = "pxe-server";
|
||||||
networking.firewall.allowedUDPPorts = [
|
networking.firewall.allowedUDPPorts = [
|
||||||
67
|
67
|
||||||
|
|||||||
Reference in New Issue
Block a user