Installateur Debian - Automatisation des réponses

Mise à jour : Debian 10.8

Ce document décrit la préparation des réponses aux questions de l'installateur, sous forme

Référence

Sommaire

1 - Questions

# /var/lib/cdebconf/questions.dat
# /var/lib/cdebconf/templates.dat
$ sudo cat /var/lib/installer/cdebconf/questions.dat
$ sudo cat /var/lib/installer/cdebconf/templates.dat
$ sudo aptitude install debconf-utils
$ sudo debconf-get-selections --installer > liste
$ sudo debconf-get-selections >> liste

2 - Fichier de pré-configuration

2.1 - Format

d-i debian-installer/locale string fr_FR

2.2 - Exemple

$ cat <<EOF> preseed.txt
### Exemple de fichier de préconfiguration pour installation automatique Debian Buster
### sur le disque unassigned-disk
### ATTENTION - ATTENTION - ATTENTION - ATTENTION
### 1 - Le contenu du disque unassigned-disk sera écrasé sans avertissement
### 2 - Remplacer les noms d'hôte, d'utilisateur et les mots de passe utilisateur et administrateur

# Langue : français
d-i debian-installer/language string fr

# Pays : france
d-i debian-installer/country string FR

#Localisation : affichage caractères français code UTF-8
d-i debian-installer/locale string fr_FR.UTF-8

# Clavier : français - latin9
d-i keyboard-configuration/xkb-keymap select fr(latin9)

# Sélection réseau automatique (si une interface est disponible)
d-i netcfg/choose_interface select auto

# Nom d'hôte : Entrée le nom d'hôte
d-i netcfg/get_hostname string unassigned-hostname

# Nom de domaine : ATTENTION - Peut-être laissé non défini, mais la ligne doit apparaître)
d-i netcfg/get_domain string unassigned-domain

# Disable that annoying WEP key dialog.
d-i netcfg/wireless_wep string

# Téléchargement de firmware non-libres,en cas de besoin, sans demander : oui
d-i hw-detect/load_firmware boolean true

# Distribution à installer: buster
d-i mirror/suite string buster

# Mot de passe administrateur : remplacer par e mot de passe administrateur
d-i passwd/root-password password unassigned-passwd-root
d-i passwd/root-password-again password unassigned-passwd-root

# Nom utilisateur: remplacer par le nom d'utilisateur
d-i passwd/user-fullname string unassigned-user
d-i passwd/username string unassigned-user

# Mot de passe utilisateur : remplacer par le mot de passe utilisateur
d-i passwd/user-password password unassigned-passwd-user
d-i passwd/user-password-again password unassigned-passwd-user

# Horloge : mode UTC :non
d-i clock-setup/utc boolean false

# Fuseau horaire : Paris
d-i time/zone select Europe/Paris

# Utilisation ntp : non
d-i clock-setup/ntp boolean false

# Partitionnement : disque entier Remplacer par l'identifiant du disque : /dev/sdx
d-i partman-auto/disk string unassigned-disk

# Méthode d'installation : partitions régulières (ex4)
d-i partman-auto/method string regular

# Schéma de partitionnement : tout en une partition >atomic, home séparé >home
d-i partman-auto/choose_recipe select home

# Partitionnement : Terminer le partitionnement et appliquer les changements
d-i partman/choose_partition select finish

# Faut-il appliquer le changemet sur les disques : oui
d-i partman/confirm boolean true

# Les partitions vont-être crées.Faut-il continuer? oui
d-i partman-partitioning/confirm_write_new_label boolean true

# Les partitions existantes vont être écrasées ? oui
d-i partman/confirm_nooverwrite boolean true

# Apt setup nonfree : oui
d-i apt-setup/non-free boolean true

# apt-setup contrib : oui
d-i apt-setup/contrib boolean true

# apt-setup services : security,updates,backports
d-i apt-setup/services-select multiselect security, updates, backports

# Apt-setup, utilisation miroir réseau : oui
d-i apt-setup/use_mirror boolean true

# Miroir pays : Entrée manuelle
d-i mirror/country string manual

# Miroir protocol : https
d-i mirror/protocol string https

# Miroir pays : Entrée manuelle
d-i mirror/https/country string manual

# Miroir nom d'hôte
d-i mirror/https/hostname string deb.debian.org

# Miroir - répertoire : debian
d-i mirror/https/directory string /debian

# Faut-il utiliser un proxy : non
d-i mirror/https/proxy string

# Tâches à installer : au minimum standard (possibilités additionnelles desktop, xfce-desktop, web-server, print-server, ssh-server,...)
tasksel tasksel/first multiselect standard

# Paquets à installer (exemples)
d-i pkgsel/include string aptitude, hwinfo, lshw, sudo, debconf-utils

# Paquets à supprimer (exemples)
d-i preseed/late_command string in-target apt-get -y purge vim-tiny; in-target apt-get -y purge vim-common

# Mise à jour finale: full-upgrade (autre choix none, full-upgrade)
d-i pkgsel/upgrade select full-upgrade

# Suivi statistiques paquets installés :oui
popularity-contest popularity-contest/participate boolean true

# Installation GRUB : remplacer par identifiant du disque /dev/sdx
d-i grub-installer/bootdev string unassigned-disk

# Supprimer apt-cdrom dans sources.list
apt-cdrom-setup apt-setup/disable-cdrom-entries boolean true

# Désactiver le message indiquant la fin de l'installation
d-i finish-install/reboot_in_progress note

# Eteindre la machine après l'installation
d-i debian-installer/exit/poweroff boolean true

EOF
$ sed -i -e 's/unassigned-hostname/buster/' -e 's/unassigned-passwd-root/azerazer/' \
-e 's/unassigned-user/philippe/' -e 's/unassigned-passwd-user/pengouin/' \
-e 's/unassigned-disk/\/dev\/sdb/' preseed.cfg

2.3 - Wifi

$ cat <<EOF >> preseed.txt

# Sélection ESSID (parmi la liste présentée) :Remplacer par l'ESSID souhaité
d-i netcfg/wireless_show_essids string unassigned-essid

# Sélection du mode :wpa
d-i netcfg/wireless_security_type select wpa

# Entrée du mot de passe : Remplacer par le mot de passe
d-i netcfg/wireless_wpa string unassigned-wifi-password

EOF
$ sed -i -e 's/unassigned-essid/monessid/' -e 's/unassigned-wifi-password/azerazer/' preseed.txt

2.4 - Vérification d'un fichier de pré-configuration

$ sudo debconf-set-selections -c preseed.txt
warning: Unknown type apt-setup/disable-cdrom-entries, skipping line 127

3 - Paramètres dans la ligne de commande de linux

3.1 - Principe

3.2 - Format standard

d-i debian-installer/locale string fr_FR

on obtient le paramètre au format ligne de commande :

d-i:debian-installer/locale=fr_FR
debian-installer/locale=fr_FR

3.3 - Format alias

locale=fr_FR

est un alias pour

d-i:debian-installer/locale=fr_FR
locale=fr_FR.UTF-8 country=FR language=fr keymap=fr(latin9)

3.4 - Paramètre file

file=/cdrom/preseed.txt
file=/hd-media/preseed.txt

3.5 - Paramètre auto

auto=true file=/hd-media/preseed.txt
locale=fr_FR.UTF-8 country=FR language=fr keymap=fr(latin9)