Installation automatisée Karmic Koala par preseed

Objectifs

  • Le fichier preseed permet l’installation automatisée d’une distribution comme Debian ou Ubuntu.
  • L’avantage étant de pré-remplir les options d’installation (paramétrages réseaux, régionaux, paquets à installer, partitionnement,…)

Configurations

Installation Karmic Koala Desktop depuis les dépôts officiels

  • Le fichier proposé ci-dessous propose l’installation de la distribution Karmic Desktop depuis les dépôts officiels :
<code>
#
# Configuration du fichier preseed :
#
# Configuration reseau (obsolete en si utilisation du DHCP)
#d-i netcfg/get_hostname string unassigned-hostname
#d-i netcfg/get_domain string unassigned-domain
#d-i netcfg/get_hostname seen true
#d-i netcfg/get_domain seen true
#
# Choix du noyau a installer
# Dans le cas d'un serveur 9.10, installer linux-generic-pae :
#d-i     base-installer/kernel/override-image    string linux-generic-pae
#
# Source d'installation (miroir)
#
d-i	mirror/country		string fr
d-i mirror/http/countries   select fr
d-i	mirror/protocol select	http
d-i	mirror/http/hostname	string fr.archive.ubuntu.com
d-i	mirror/http/directory	string /ubuntu
# Nom de la distribution installée
d-i	mirror/suite		string karmic
# Choix des miroirs security :
d-i apt-setup/services-select multiselect security
d-i apt-setup/security_host string fr.archive.ubuntu.com
d-i apt-setup/security_path string /ubuntu
d-i	mirror/http/proxy	string
#
# horloge
#
d-i clock-setup/utc boolean true
d-i time/zone string Europe/Paris
d-i clock-setup/ntp boolean true
d-i clock-setup/ntp-server ntp.free.fr
#
# partitionnement
#
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
#d-i partman-auto/purge_lvm_from_device boolean true # pour les anciennes versions, en 8.04 cf ligne ci-dessous
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-lvm/confirm boolean true
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select
# Terminer le partitionnement et appliquer les changements
d-i partman/confirm boolean true
#
# Détermine le type d'installation
#
tasksel tasksel/first multiselect ubuntu-desktop
#tasksel tasksel/first multiselect standard
#tasksel tasksel/first multiselect ubuntu-desktop
#tasksel tasksel/first multiselect kubuntu-desktop
#tasksel tasksel/first multiselect edubuntu-desktop
#tasksel tasksel/first multiselect xubuntu-desktop
#tasksel tasksel/first multiselect dns-server
#tasksel tasksel/first multiselect lamp-server ##(installation d'un serveur avec Apache, MySQL et PHP)
#
# Creation des comptes utilisateur/root
#
#d-i passwd/root-login boolean true
# Mot de passe root en clair (insecure) :
#d-i passwd/root-password password insecure
#d-i passwd/root-password-again password insecure
# Mot de passe root crypté en MD5 :
#d-i passwd/root-password-crypted password $1$hHHfJXII$0eStKtVO310d1RyvnCYdQ0
#
# Création du compte local : Toto
# Si le compte root est déjà créé, l'utilisateur ne pourra pas faire de sudo
#
d-i passwd/make-user boolean true
d-i passwd/user-fullname string Toto
d-i passwd/username string toto
#d-i passwd/user-password password insecure
#d-i passwd/user-password-again password insecure
d-i passwd/user-password-crypted password $1$hHHfJXII$0eStKtVO310d1RyvnCYdQ0
#d-i passwd/user-password-again-crypted password $1$hHHfJXII$0eStKtVO310d1RyvnCYdQ0
#
# Pour éviter le dernier message disant que l'installation est terminée :
d-i finish-install/reboot_in_progress note
#
# Politique pour l'application des mises à jour. Réglé sur :
#  - "none" (pas de mise à jour automatique)
#  - "unattended-upgrades" (installation des mises à jour de sécurité automatiquement)
#  - "landscape" (mise à jour gérées depuis Landscape)
d-i pkgsel/update-policy select unattended-upgrades
# Permet d'encrypter le répertoire home (ne fonctionne pas pour les versions antérieures a Intrepid) :
d-i user-setup/encrypt-home boolean false
#
# Apt setup.
#
# Configure les branches qui seront actives multiverse, universe, security
base-config	apt-setup/uri_type	select http
#base-config	apt-setup/country	select enter information manually
base-config	apt-setup/hostname	string fr.archive.ubuntu.com
base-config	apt-setup/directory	string /ubuntu
base-config	apt-setup/another	boolean true
base-config	apt-setup/universe	boolean true
base-config	apt-setup/multiverse	boolean true
base-config	apt-setup/security-updates	boolean true
#
# paquets supplémentaires qui seront installés :
#
d-i pkgsel/include string libpam-mount
d-i pkgsel/include string curl
d-i pkgsel/include string debconf-utils
d-i pkgsel/include string openssh-server
d-i pkgsel/include string vim
d-i pkgsel/include string ssh
#
# Dernière commande :
# Permet de lancer une derniere commande : ici le telechargement et le lancement d'un script pour la post install
d-i preseed/late_command string wget -q -O - http://monserveureb/postinstall.sh | chroot /target /bin/bash
</code>

Installation Karmic Koala Desktop depuis un dépôt local

  • Pour l’installation du client depuis un miroir local, il suffit de copier le fichier précédent en modifiant les trois lignes suivantes :
  1. d-i mirror/http/hostname string
  2. d-i apt-setup/security_host string
  3. base-config apt-setup/hostname string
<code>
# Source d'installation (miroir)
##~~~~ paramètres ~~~~##
d-i	mirror/http/hostname	string mirror.test.lan
##~~~~ paramètres ~~~~##
# Source d'installation (miroir)
##~~~~ paramètres ~~~~##
d-i apt-setup/security_host string mirror.test.lan
##~~~~ paramètres ~~~~##
# Apt setup.
##~~~~ paramètres ~~~~##
base-config	apt-setup/hostname	string mirror.test.lan
##~~~~ paramètres ~~~~##
</code>

Installation Karmic Koala Server depuis un dépôt local

  • Enfin, pour l’installation d’un serveur de base, il faut modifier ces deux directives :
  1. d-i base-installer/kernel/override-image string linux-generic-pae
  2. tasksel tasksel/first multiselect standard
<code>
##~~~~ paramètres ~~~~##
# Choix du noyau a installer
# Dans le cas d'un serveur 9.10, installer linux-generic-pae :
d-i     base-installer/kernel/override-image    string linux-generic-pae
##~~~~ paramètres ~~~~##
# Détermine le type d'installation :
#
tasksel tasksel/first multiselect standard
##~~~~ paramètres ~~~~##
</code>

Sources