docs: Restructure and improve UDIB documentation
This commit is contained in:
139
README.md
139
README.md
@@ -1,72 +1,86 @@
|
|||||||
# UDIB
|
# UDIB - Outil de Construction d'Installation Debian Non Assistée
|
||||||
|
|
||||||
UDIB est l'outil de construction d'installation Debian non assistée.
|
## Introduction
|
||||||
Il fournit un utilitaire en ligne de commande pratique pour injecter des fichiers dans les ISOs d'installation Debian.
|
UDIB est l'outil de construction d'installation Debian non assistée. Il fournit un utilitaire en ligne de commande pratique pour injecter des fichiers dans les ISOs d'installation Debian.
|
||||||
En utilisant UDIB, vous pouvez préconfigurer un ISO en injectant un fichier de préconfiguration.
|
|
||||||
Les ISOs préconfigurés permettent des installations Debian entièrement automatisées sur du matériel nu (ou n'importe où ailleurs).
|
En utilisant UDIB, vous pouvez préconfigurer un ISO en injectant un fichier de préconfiguration. Les ISOs préconfigurés permettent des installations Debian entièrement automatisées sur du matériel nu (ou n'importe où ailleurs).
|
||||||
|
|
||||||
**Note:** Ce projet est un fork de [YunoHost/custom-debian-iso](https://github.com/YunoHost/custom-debian-iso) qui est lui-même un fork de [ulinja/udib](https://github.com/ulinja/udib).
|
**Note:** Ce projet est un fork de [YunoHost/custom-debian-iso](https://github.com/YunoHost/custom-debian-iso) qui est lui-même un fork de [ulinja/udib](https://github.com/ulinja/udib).
|
||||||
|
|
||||||
## Qu'est-ce que la préconfiguration ?
|
## Qu'est-ce que la préconfiguration ?
|
||||||
|
|
||||||
Un fichier de préconfiguration est un fichier texte qui fournit à l'installateur Debian des réponses préalablement définies (préconfigurées) pendant le processus d'installation.
|
Un fichier de préconfiguration est un fichier texte qui fournit à l'installateur Debian des réponses préalablement définies (préconfigurées) pendant le processus d'installation.
|
||||||
La préconfiguration d'un ISO Debian vous permet de réduire considérablement la quantité d'interaction utilisateur requise pendant une installation, ou même de l'automatiser entièrement.
|
|
||||||
Le fichier de préconfiguration est écrit par vous puis injecté dans l'image d'installation.
|
La préconfiguration d'un ISO Debian vous permet de :
|
||||||
Quand vous démarrez l'installation, toutes les réponses que vous avez fournies à l'installateur debian dans le cadre de votre fichier de préconfiguration sont automatiquement appliquées pendant l'installation.
|
- Réduire considérablement la quantité d'interaction utilisateur requise pendant une installation
|
||||||
Si vous voulez en savoir plus, vous pouvez regarder le [guide officiel](https://www.debian.org/releases/stable/amd64/apb.en.html) de Debian ou l'[aperçu rapide](https://wiki.debian.org/DebianInstaller/Preseed) du wiki Debian, qui expliquent tous deux la préconfiguration bien mieux que je ne peux le faire.
|
- Automatiser entièrement l'installation
|
||||||
|
|
||||||
|
Le fichier de préconfiguration est écrit par vous puis injecté dans l'image d'installation. Quand vous démarrez l'installation, toutes les réponses que vous avez fournies à l'installateur Debian sont automatiquement appliquées.
|
||||||
|
|
||||||
|
Pour plus d'informations, consultez :
|
||||||
|
- [Guide officiel Debian](https://www.debian.org/releases/stable/amd64/apb.en.html)
|
||||||
|
- [Aperçu rapide du wiki Debian](https://wiki.debian.org/DebianInstaller/Preseed)
|
||||||
|
|
||||||
## Comment fonctionne UDIB ?
|
## Comment fonctionne UDIB ?
|
||||||
|
|
||||||
Le but principal d'UDIB est l'injection de fichiers dans les ISOs d'installation Debian existants.
|
Le but principal d'UDIB est l'injection de fichiers dans les ISOs d'installation Debian existants.
|
||||||
En résumé, il fait cela en extrayant l'ISO, en ajoutant les fichiers à l'initrd de l'ISO, et en repackageant l'ISO à nouveau.
|
|
||||||
Vous pourriez faire tout cela manuellement bien sûr en suivant les guides [basique](https://wiki.debian.org/DebianInstaller/Preseed/EditIso#Adding_a_Preseed_File_to_the_Initrd) et [avancé](https://wiki.debian.org/RepackBootableISO) pour le repackaging d'ISO sur le wiki Debian, mais UDIB fait tout cela pour vous.
|
En résumé, il fait cela en :
|
||||||
|
1. Extrayant l'ISO
|
||||||
|
2. Ajoutant les fichiers à l'initrd de l'ISO
|
||||||
|
3. Repackageant l'ISO à nouveau
|
||||||
|
|
||||||
|
Vous pourriez faire tout cela manuellement en suivant les guides du wiki Debian, mais UDIB fait tout cela pour vous.
|
||||||
|
|
||||||
## Prérequis
|
## Prérequis
|
||||||
|
|
||||||
Avant d'utiliser UDIB pour créer des ISOs personnalisés :
|
### Dépendances
|
||||||
|
|
||||||
1. Assurez-vous d'avoir tous les [logiciels requis](#dépendances) installés
|
|
||||||
2. Clonez ce dépôt et `cd` dans votre copie locale
|
|
||||||
3. (optionnel) Créez et activez un environnement virtuel : `python3 -m venv .venv && . .venv/bin/activate`
|
|
||||||
4. Installez les packages python requis : `pip install -r requirements.txt`
|
|
||||||
5. Téléchargez l'ISO Debian : `python3 udib.py get iso`
|
|
||||||
|
|
||||||
# Dépendances
|
|
||||||
|
|
||||||
L'utilisation d'UDIB pour créer des ISOs nécessite les logiciels suivants :
|
L'utilisation d'UDIB pour créer des ISOs nécessite les logiciels suivants :
|
||||||
|
|
||||||
- GNU/Linux
|
- Système d'exploitation : GNU/Linux
|
||||||
- `python3` *(3.10.4 connu pour fonctionner)*
|
- `python3` *(version 3.10.4 connue pour fonctionner)*
|
||||||
- [packages python requis](./requirements.txt) peuvent être installés dans un environnement virtuel
|
- Les [packages python requis](./requirements.txt) peuvent être installés dans un environnement virtuel
|
||||||
- `xorriso` *(1.5.4 connu pour fonctionner)*
|
- `xorriso` *(version 1.5.4 connue pour fonctionner)*
|
||||||
- **Debian (bullseye):** [xorriso](https://packages.debian.org/bullseye/xorriso)
|
- **Debian (bullseye):** [xorriso](https://packages.debian.org/bullseye/xorriso)
|
||||||
- **Arch Linux:** [extra/libisoburn](extra/libisoburn)
|
- **Arch Linux:** [extra/libisoburn](extra/libisoburn)
|
||||||
- GNU `gpg`
|
- GNU `gpg` (préinstallé sur la plupart des distributions)
|
||||||
- préinstallé sur la plupart des distributions
|
- GNU `cpio` (préinstallé sur la plupart des distributions)
|
||||||
- GNU `cpio`
|
- GNU `sha512sum` (préinstallé sur la plupart des distributions)
|
||||||
- préinstallé sur la plupart des distributions
|
|
||||||
- GNU `sha512sum`
|
|
||||||
- préinstallé sur la plupart des distributions
|
|
||||||
|
|
||||||
Un accès Internet est (évidemment) requis si vous voulez récupérer des fichiers en utilisant UDIB.
|
Un accès Internet est (évidemment) requis si vous voulez récupérer des fichiers en utilisant UDIB.
|
||||||
|
|
||||||
## Usage
|
### Installation
|
||||||
|
1. Clonez ce dépôt et `cd` dans votre copie locale
|
||||||
### Télécharger Debian
|
2. (Optionnel) Créez et activez un environnement virtuel :
|
||||||
|
```bash
|
||||||
Pour télécharger la dernière ISO Debian x86-64 netinstall :
|
python3 -m venv .venv && . .venv/bin/activate
|
||||||
|
```
|
||||||
**Version stable :**
|
3. Installez les packages python requis :
|
||||||
|
```bash
|
||||||
|
pip install -r requirements.txt
|
||||||
|
```
|
||||||
|
4. Téléchargez l'ISO Debian :
|
||||||
```bash
|
```bash
|
||||||
python3 udib.py get iso
|
python3 udib.py get iso
|
||||||
```
|
```
|
||||||
|
|
||||||
**Version testing :**
|
## Usage
|
||||||
|
|
||||||
|
### Aide en ligne de commande
|
||||||
|
- Options générales : `./udib.py --help`
|
||||||
|
- Aide pour une sous-commande spécifique : `./udib.py COMMAND --help`
|
||||||
|
|
||||||
|
### Télécharger Debian
|
||||||
|
|
||||||
|
#### Version stable
|
||||||
|
```bash
|
||||||
|
python3 udib.py get iso
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Version testing
|
||||||
```bash
|
```bash
|
||||||
python3 udib.py get iso-testing
|
python3 udib.py get iso-testing
|
||||||
```
|
```
|
||||||
|
|
||||||
### Exemples avancés de téléchargement
|
#### Options supplémentaires
|
||||||
|
|
||||||
Télécharger dans un répertoire spécifique :
|
Télécharger dans un répertoire spécifique :
|
||||||
```bash
|
```bash
|
||||||
@@ -92,8 +106,7 @@ Ces commandes téléchargent automatiquement l'ISO et vérifient son intégrité
|
|||||||
|
|
||||||
### Créer un ISO personnalisé
|
### Créer un ISO personnalisé
|
||||||
|
|
||||||
**Préparer les fichiers à injecter :**
|
#### Préparer les fichiers à injecter
|
||||||
|
|
||||||
Le dossier `files_to_inject/` doit contenir tous les fichiers que vous souhaitez injecter dans l'ISO :
|
Le dossier `files_to_inject/` doit contenir tous les fichiers que vous souhaitez injecter dans l'ISO :
|
||||||
- `boot/grub/grub.cfg` : Configuration GRUB personnalisée
|
- `boot/grub/grub.cfg` : Configuration GRUB personnalisée
|
||||||
- `boot/grub/theme/` : Thème GRUB personnalisé
|
- `boot/grub/theme/` : Thème GRUB personnalisé
|
||||||
@@ -102,40 +115,20 @@ Le dossier `files_to_inject/` doit contenir tous les fichiers que vous souhaitez
|
|||||||
- `logo.png` : Logo personnalisé affiché pendant l'installation
|
- `logo.png` : Logo personnalisé affiché pendant l'installation
|
||||||
- `preseeds/default.preseed` : Fichier de préconfiguration pour l'installation automatisée
|
- `preseeds/default.preseed` : Fichier de préconfiguration pour l'installation automatisée
|
||||||
|
|
||||||
**Injection de fichiers :**
|
#### Injection de fichiers
|
||||||
```bash
|
```bash
|
||||||
python3 udib.py --output-file skylanix.iso inject --image-file debian-12.x.x-amd64-netinst.iso
|
python3 udib.py --output-file skylanix.iso inject --image-file debian-12.x.x-amd64-netinst.iso
|
||||||
```
|
```
|
||||||
|
|
||||||
**Utilisation :**
|
#### Utilisation
|
||||||
Démarrez à partir de l'ISO `-modified.iso` sur votre machine cible (ou dans une VM)
|
- Démarrez à partir de l'ISO `-modified.iso` sur votre machine cible (ou dans une VM)
|
||||||
|
- Selon le nombre de réponses fournies dans le fichier de préconfiguration, l'installation peut nécessiter une certaine interaction manuelle
|
||||||
|
|
||||||
Selon le nombre de réponses que vous avez fournies dans le fichier de préconfiguration, l'installation peut nécessiter une certaine interaction manuelle.
|
Les fichiers de préconfiguration sont très puissants. Pour plus de personnalisation, consultez la section [Qu'est-ce que la préconfiguration](#quest-ce-que-la-préconfiguration).
|
||||||
Les fichiers de préconfiguration sont très puissants, et si vous avez besoin de plus de personnalisation, vous pouvez regarder plus en détail [comment ils fonctionnent](#quest-ce-que-la-préconfiguration).
|
|
||||||
Vous pouvez également utiliser UDIB pour obtenir le fichier d'exemple de préconfiguration complet : `./udib.py get preseed-file-full` et l'utiliser comme point de départ.
|
|
||||||
Assurez-vous de jeter un œil à la [référence d'utilisation](#guide-dutilisation-détaillé) pour un regard plus approfondi sur UDIB lui-même.
|
|
||||||
|
|
||||||
# Guide d'utilisation détaillé
|
Vous pouvez obtenir le fichier d'exemple de préconfiguration complet avec :
|
||||||
|
```bash
|
||||||
Vous pouvez voir l'aide en ligne de commande en utilisant `./udib.py --help` pour les options générales et `./udib.py COMMAND --help` pour l'aide avec une sous-commande spécifique.
|
./udib.py get preseed-file-full
|
||||||
|
|
||||||
Le nom et la destination des fichiers produits par `udib.py` peuvent être spécifiés avec l'option `--output-file`.
|
|
||||||
Alternativement, vous pouvez utiliser l'option `--output-dir` pour spécifier le répertoire où les fichiers produits seront sauvegardés, sans avoir à les nommer explicitement (les noms par défaut seront utilisés).
|
|
||||||
|
|
||||||
## Commandes avancées
|
|
||||||
|
|
||||||
### Récupération d'exemples de fichiers de préconfiguration ou d'ISOs vanille
|
|
||||||
|
|
||||||
Comme point de départ pour créer votre propre ISO préconfiguré, vous pouvez récupérer un des fichiers d'exemple de préconfiguration de Debian ou un ISO Debian non modifié en utilisant UDIB :
|
|
||||||
|
|
||||||
```
|
|
||||||
udib.py [--output-file FILE | --output-dir DIR] get WHAT
|
|
||||||
```
|
```
|
||||||
|
|
||||||
`WHAT` doit être une chaîne spécifique et peut être soit :
|
Consultez la [référence d'utilisation](#guide-dutilisation-détaillé) pour un regard plus approfondi sur UDIB.
|
||||||
|
|
||||||
- `preseed-file-basic` pour télécharger le fichier d'exemple de préconfiguration basique de Debian (suffisant dans la plupart des cas)
|
|
||||||
- `preseed-file-full` pour télécharger le fichier d'exemple de préconfiguration complet de Debian (a BEAUCOUP d'options de personnalisation)
|
|
||||||
- `iso` pour télécharger le dernier ISO netinst Debian stable x86-64 non modifié
|
|
||||||
- `iso-testing` pour télécharger le dernier ISO netinst Debian testing x86-64 non modifié
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user