Pour les installations sans assistance sur plusieurs ordinateurs, il est possible d'effectuer des installations entièrement automatiques à l'aide de Kickstart ou du programme d'installation Ubuntu lui-même.
Le programme d'installation Ubuntu prend en charge l'automatisation des installations via des fichiers de préconfiguration. Un fichier de préconfiguration peut être chargé à partir du réseau ou d'un support amovible, et utilisé pour répondre aux questions posées pendant le processus d'installation.
Automatisation de l'installation à l'aide de la préconfiguration, présente une documentation complète sur la préconfiguration, avec un exemple de fichier.
Le programme d’installation Ubuntu prend en charge l’automatisation des installations à l’aide des fichiers Kickstart, conçus par Red Hat pour une utilisation dans le programme d’installation Anaconda. Cette méthode n’est pas aussi souple que la méthode du fichier de préconfiguration ci-dessus, mais elle nécessite moins de connaissances sur le fonctionnement du programme d’installation.
Cette section décrit uniquement les bases et les différences entre Anaconda et le programme d’installation Ubuntu. Reportez-vous à la documentation Red Hat pour des instructions détaillées.
Pour générer un fichier Kickstart, installer le paquet system-config-kickstart
. Cela offre une interface utilisateur graphique pour les différentes options disponibles.
Une fois qu'on a le fichier Kickstart, on peut le modifier si nécessaire et le placer sur un serveur Web, FTP ou NFS, ou le copier sur le support de démarrage de l’installateur. Où qu'il soit placé , il faut transmettre un paramètre au programme d'installation au moment du démarrage pour lui indiquer d'utiliser le fichier.
Pour que le programme d'installation utilise un fichier Kickstart téléchargé à partir d'un serveur Web ou FTP, ajouter ks=http://url/to/ks.cfg
ou ks=ftp://url/to/ks.cfg
aux paramètres de démarrage du noyau. Cela nécessite que l'installateur soit capable de configurer le réseau via DHCP sur la première interface connectée sans se poser de questions; il faudra peut-être aussi ajouter ksdevice=eth1
ou similaire si le programme d’installation ne parvient pas à déterminer automatiquement la bonne interface.
De même, pour que le programme d'installation utilise un fichier Kickstart sur un serveur NFS, ajouter ks=nfs:server:/path/to/ks.cfg
aux paramètres de démarrage du noyau. La méthode prise en charge par Anaconda consistant à ajouter un paramètre de démarrage “ks” simple pour déterminer l'emplacement du fichier Kickstart à partir d'une réponse DHCP n'est pas encore prise en charge par le programme d'installation Ubuntu.
Pour placer un fichier Kickstart sur un CD, il faut remanier (avec mkisofs par exemple) l'image ISO afin d'inclure le fichier Kickstart et ajouter ks=cdrom:/path/to/ks.cfg
aux paramètres de démarrage du noyau.
Le programme d’installation Ubuntu prend en charge quelques extensions de Kickstart nécessaires à l’installation automatique d’Ubuntu:
user joe --fullname "Joe User" --password iamjoe
preseed --owner gdm shared/default-x-display-manager select gdm
preseed preseed/late_command string "sed -i 's/foo/bar/g' /target/etc/hosts"
layout_variant
, avec les valeurs appropriées de layout et de variante. Par exemple, in_guj
sélectionne la variante gujarati de la présentation indienne.%post --nochroot
(bien que l'on puisse également choisir de générer une section %packages
dans un script %pre
et de l’inclure à l’aide de %include
). Cela ne fonctionne pas si le script de post-installation est exécuté dans l'environnement chrooté.Pour l'instant, le programme d'installation Ubuntu ne prend en charge qu'un sous-ensemble des fonctionnalités de Kickstart. On trouvera ci-dessous un bref résumé des fonctionnalités manquantes:
logvol
--percent
, --bytes-per-inode
et --fsoptions
pour certains types de configuration détaillée de la gestion de volumes logiques (LVM). (La configuration de LVM en général est supportée expérimentalement à partir d’Ubuntu 9.04.)%packages
ne sont plus prises en charge à partir d’Ubuntu 6.10, à la suite d’autres améliorations. Il faudra peut-être utiliser un script %post
à la place pour supprimer les packages inutiles.Voici un exemple de fichier Kickstart qui peut être utilisé comme point de départ:
# Modèle générique de kickstart pour Ubuntu # Plate-forme: x86 et x86-64 # # Langue du système lang en_US # Modules de langue à installer langsupport en_US # Clavier système keyboard us # Souris système mouse # Fuseau horaire du système timezone America/New_York # Mot de passe root rootpw --disabled # Utilisateur initial (utilisateur ayant des capacités sudo) user ubuntu --fullname "Utilisateur Ubuntu" --password root4me2 # Redémarrer après l'installation reboot #Utilisez l'installation en mode texte text # Installer le système d'exploitation au lieu de la mise à niveau install # Support d'installation cdrom #nfs --server=server.com --dir=/path/to/ubuntu/ #url --url http://server.com/path/to/ubuntu/ #url --url ftp://server.com/path/to/ubuntu/ # Configuration du chargeur de démarrage système bootloader --location=mbr # Clear du Master Boot Record zerombr yes # libération de partition clearpart --all --initlabel # Partition de disque de base part / --fstype ext4 --size 1 --grow --asprimary part swap --size 1024 part /boot --fstype ext4 --size 256 --asprimary # Partition avancée #part /boot --fstype=ext4 --size=500 --asprimary #part pv.aQcByA-UM0N-siuB-Y96L-rmd3-n6vz-NMo8Vr --grow --size=1 #volgroup vg_mygroup --pesize=4096 pv.aQcByA-UM0N-siuB-Y96L-rmd3-n6vz-NMo8Vr #logvol / --fstype=ext4 --name=lv_root --vgname=vg_mygroup --grow --size=10240 \ --maxsize=20480 #logvol swap --name=lv_swap --vgname=vg_mygroup --grow --size=1024 --maxsize=8192 # Informations d'autorisation du système auth --useshadow --enablemd5 # Informations réseau network --bootproto=dhcp --device=eth0 # Configuration du pare-feu firewall --disabled --trust=eth0 --ssh # Ne pas configurer le système X Window skipx