Installations automatiques

Voici quelques notes sur les installations automatiques sous Linux.

1. Solution de déploiements automatisés

FAI - Fully Automatic Installation

Site Internet : https://fai-project.org/features/

Fonctionnalités

  • Installs Debian GNU/Linux, Ubuntu, CentOS, SuSe, Scientific Linux, ….
  • Class concept supports heterogeneous configuration and hardware
  • Update running system without installation (e.g daily maintenance)
  • Central configuration repository for all install clients
  • Advanced disaster recovery system
  • Autodiscover of the install server
  • Creation of disk images for KVM, XEN, VirtualBox, VMware or cloud hosts
  • Reproducible installation
  • Automatic documentation in central repository
  • Automated hardware inventory
  • Hooks can extend or customize the normal behavior
  • Full remote control via ssh during installation process
  • FAI runs on i386, AMD64, PowerPC, SPARC and IBM z10 mainframe
  • Fast automatic installation for Beowulf clusters
  • Several GUI for FAI using GOsa, openQRM, DC

2. Exemples Debian/Ubuntu/Centos en KVM

On ira voir des exemples d’installations automatiques sur https://github.com/goffinet/virt-scripts/blob/master/auto-install.sh dans le cadre du document Virtualisation KVM. On y trouve des exemples de fichiers de réponse à l’installateur Debian, Ubuntu et Centos7/RHEL7/Fedora.

On les appelle des fichiers Kickstart en RHEL/Centos/Fedora et des fichiers Preseed en Debian/Ubuntu.

3. Installation ultra-silencieuse de paquets Debian sans ou avec réponse automatique aux dialogues

Source : https://www.microhowto.info/howto/perform_an_unattended_installation_of_a_debian_package.html

Sur base du scénario d’une installation ultra-silencieuse des paquets apache2.

export DEBIAN_FRONTEND=noninteractive
apt update -q
apt install -q -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" apache2

Attention certains paquets posent des questions qui méritent réponse (comme un mot de passe, un paramètre, …) :

Il s’agit de préciser des paramètres preseed des commandes “debconf”.

D’abord visualiser des paramètres intéressant :

apt-get install debconf-utils
debconf-get-selections > preseed.conf
more preseed.conf

Et adapter les paramètres : par exemple s’il s’agit du paquet mysql-server-5.5

debconf-get-selections | grep mysql-server
echo mysql-server-5.5 mysql-server/root_password password xyzzy | debconf-set-selections
echo mysql-server-5.5 mysql-server/root_password_again password xyzzy | debconf-set-selections