Kickstart

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Installation Linux non interactive (RHEL/CentOS)
Fichier ks.cfg
Générateur GUI system-config-kickstart
Voir aussi Serveur boot PXE

Kickstart est le format de fichier d'installation automatisée de Red Hat, utilisé pour répondre à l'avance à toutes les questions posées par l'installateur (Anaconda) : partitionnement, paquets à installer, réseau, mot de passe root, scripts post-installation... Combiné à un serveur boot PXE, il permet de déployer un système Linux entièrement sans intervention manuelle.

Côté serveur de provisioning

Paquets nécessaires

yum -y install dhcp tftp-server nfs-utils syslinux vsftpd

DHCP

# /etc/dhcp/dhcpd.conf
default-lease-time 600;
max-lease-time 700;

allow booting;
allow bootp;
authoritative;

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.150;
  next-server 192.168.1.254;
  filename "pxelinux.0";
}
service dhcpd start

TFTP

Activer le service (sur un système utilisant encore xinetd) :

# /etc/xinetd.d/tftp
disabled    no
service xinetd restart

Préparer l'arborescence de boot à partir d'un support d'installation :

cd /var/lib/tftpboot/
mount /dev/cdrom /var/ftp/pub/rhel6
cp -a /var/ftp/pub/rhel6/isolinux/* .
mkdir pxelinux.cfg
cp isolinux.cfg pxelinux.cfg/default
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

Menu pxelinux.cfg/default, avec le paramètre ks= qui indique à Anaconda où récupérer le fichier Kickstart :

default vesamenu.c32
timeout 30

display boot.msg
menu title Installation automatisée

label linux
  menu label Installer ou mettre à jour
  menu default
  kernel vmlinuz
  append initrd=initrd.img ks=ftp://192.168.1.254/pub/ks.cfg

Déposer le fichier Kickstart à l'emplacement référencé ci-dessus (un fichier anaconda-ks.cfg existant, produit par une précédente installation, peut servir de base) :

cp /root/anaconda-ks.cfg /var/ftp/pub/ks.cfg

FTP (vsftpd)

Sert le fichier Kickstart et, selon la méthode d'installation choisie, l'arborescence des paquets :

service vsftpd start

Côté client

Démarrer la machine en boot réseau (PXE activé dans le BIOS/UEFI) et sélectionner l'option de boot correspondant à l'installation Kickstart souhaitée dans le menu.

Générer un fichier Kickstart sans l'écrire à la main

yum install system-config-kickstart
system-config-kickstart --generate ks-genere.cfg

Interface graphique de génération de fichier ks.cfg à partir de choix guidés (partitionnement, groupe de paquets, réseau...) — pratique pour produire un premier jet avant ajustement manuel.

Dépannage : groupe de paquets @core introuvable

Si l'installation échoue à trouver le groupe de paquets @core, le dépôt utilisé manque de métadonnées de groupe à jour — régénérer repodata en incluant le fichier de composants (comps.xml, à récupérer depuis le média d'installation d'origine si absent du dépôt) :

createrepo -g ./repodata/comps.xml /chemin/vers/le/depot

Voir aussi

  • Serveur boot PXE — mise en place du serveur DHCP/TFTP qui sert le menu de boot
  • PXE over MDT2013 — intégrer ce même mécanisme dans un environnement Microsoft MDT