Przeglądaj źródła

Add 'ipxe and sysrescuecd' article

master
Yorick Barbanneau 3 miesięcy temu
rodzic
commit
6a281f60fb
2 zmienionych plików z 89 dodań i 1 usunięć
  1. +88
    -0
      content/articles/2019/ipxe-sysrescuecd-archlinux/index.md
  2. +1
    -1
      pelicanconf.py

+ 88
- 0
content/articles/2019/ipxe-sysrescuecd-archlinux/index.md Wyświetl plik

@@ -0,0 +1,88 @@
Title: Démarrer SysRescueCD en PXE avec iPXE
Category: sysadmin
Tags: ipxe, sysrescuecd, Archlinux, pl-fr
Date: 2019-11-07 18:35

Pour démarrer des machines via le réseau en PXE, j'utilise [iPXE][l_ipxe]. J'en
avais déjà parlé lors du [paramétrage dnsmasq en tant que serveur DHCP avec
iPXE]({filename}../../archives/demarrage-pxe-avec-openwrt-dnsmasq-et-freenas/index.md).

J'utilise de temps à autres [SysRescueCD][l_SysRescueCD] que je démarre donc via
le réseau. J'avais une configuration qui fonctionnait bien, mais en voulant
passer à la version 6 de ce couteau suisse de diagnostic et de la réparation,
impossible de démarrer car la distribution de base a changé.

## La nouvelle arborescence

Précédement, les fichiers étaient organisés comme ceci dans mon répersoire
`srcd` sur le partage NFS ou sont stockés les fichiers :

```console
.
├── initram.igz
├── rescue32
├── rescue64
├── sysrcd.dat
└── sysrcd.md5
```

Le live CD, basé sur Gentoo était compatible avec les arcihectures 32 et 64
bits. Avec la version 6 fini le support 32 bits, et l'arborescence est celle
utilisée par `archiso` :

```console
.
├── boot
│   ├── amd_ucode.img
│   ├── amd_ucode.LICENSE
│   ├── intel_ucode.img
│   ├── intel_ucode.LICENSE
│   └── x86_64
│   ├── sysresccd.img
│   └── vmlinuz
├── pkglist.x86_64.txt
└── x86_64
├── airootfs.sfs
└── airootfs.sha512
```

## La nouvelle configuration

Voici les options nécessaires au démarrage de SysRescueCD via `iPXE`, je ne mets
ici que l'extrait de la configuration qui nous intéresse :

```
:srcd
kernel nfs://${server_ip}/${nfs_path}/srcd/boot/x86_64/vmlinuz
initrd nfs://${server_ip}/${nfs_path}/srcd/boot/intel_ucode.img
initrd nfs://${server_ip}/${nfs_path}/srcd/boot/amd_ucode.img
initrd nfs://${server_ip}/${nfs_path}/srcd/boot/x86_64/sysresccd.img
imgargs vmlinuz ip=dhcp archisobasedir=srcd archiso_nfs_srv=${server_ip}:/${nfs_path} checksum
```

### configurer le réseau au démarrage

Les informations données [sur le wiki d'archlinux][l_wikiarch] parlent de la
commande `SYSAPPEND 3` mais celle-ci ne semble pas disponible sur
`iPXE`[^n_sysappend], le réseau ne sera donc pas initialisé lors du démarrage,
empêchant le montage du dossier NFS. Le paramètre noyau `ip=dhcp` permet de
forcer le système à obtenir une adresse IP lors du démarrage.

### Les autres options

le reste des options parlent d'elle-même :

- `archiso_nfs_srv` : donne l'adresse de la ressource NFS utilisée.
- `archisobasedir` : le répertoire de base contenant l'arborescence d'archiso.

Il est possible de trouver les options disponibles sur le
[README][l_bootparam-arch] dans le dépôt git `archiso`.

[^n_sysappend]:Voir la documentation de `SYSAPPEND` sur le [wiki de
PXELINUX][l_sysappend]

[l_ipxe]:https://ipxe.org/
[l_SysRescueCD]:http://www.system-rescue-cd.org/
[l_bootparam-arch]:https://git.archlinux.org/archiso.git/tree/docs/README.bootparams
[l_wikiarch]:https://wiki.archlinux.org/index.php/PXE#Existing_PXE_Server
[l_sysappend]:https://wiki.syslinux.org/wiki/index.php?title=SYSLINUX#SYSAPPEND_bitmask

+ 1
- 1
pelicanconf.py Wyświetl plik

@@ -51,7 +51,7 @@ TRANSLATION_FEED_ATOM = None
AUTHOR_FEED_ATOM = None
AUTHOR_FEED_RSS = None

THEME = '/home/ephase/Documents/sites/xieme-art/theme'
THEME = 'theme/'
PLUGIN_PATHS = ['plugins']
PLUGINS = ['neighbors']


Ładowanie…
Anuluj
Zapisz