Grâce au paquet live-build, on peut aisément construire une image personnalisée d’un système live Debian Wheezy. Ceci a été réalisé sous Wheezy en 64 bits, et je souhaitais obtenir une image i386 (pour la compatibilité avec le maximum d’ordinateurs à des fins de dépannage).
Première étape : installer le paquet :
sudo aptitude install live-build
créer un dossier dedié à la construction de l’image et aller dedans :
mkdir debian_live && cd debian_live
créer un dossier auto pour la conf, et y coller les exemples :
mkdir auto && cp /usr/share/doc/live-build/examples/auto/* ./auto/
Préparer la configuration en éditant le fichier auto/config pour qu’il contienne ceci
#!/bin/sh
lb config noauto \
--architectures 'i386' \
--archive-areas 'main contrib non-free' \
--bootappend-live 'boot=live config locales=fr_FR.UTF-8 keyboard-layouts=fr' \
--binary-images 'iso-hybrid' \
--distribution 'wheezy' \
--linux-flavours '486 686-pae' \
--source 'false' \
--apt 'aptitude' \
--apt-secure 'false' \
"${@}"
le --apt-secure 'false'
permet d’installer les paquets non-signés pour installer mate.
Puis on initie la configuration :
lb config
Les infos sont récuperées du fichier que l’on vient d’éditer.
Il faut ensuite ajouter les dépôts additionnels ; dans mon exemple celui de Mate, mais cela peut être n’importe quel dépôt. pour cela, créer le fichier
nano ./config/archives/mate.list.chroot
et copier dedans l’adresse du dépôt
deb http://packages.mate-desktop.org/repo/debian/ wheezy main
Ce(s) fichier(s) doit être de la forme xxxx.list.chroot pour être pris en compte automatiquement lors de la construction de l’image (à l’étape du chroot). Il est aussi possible de nommer un fichier xxx.list.binary si l’on souhaite que le dépôt se retrouve dans le sources.list du système live.
Nous spécifions ensuite la liste des paquets que nous souhaitons voir installés dans le système, grâce au fichier :
nano ./config/package-lists/packages.list.chroot
dans lequel nous collons la liste de tous les paquets souhaités. Par exemple :
vlc openoffice.org openoffice.org-l10n-fr openjdk-7-jre mdadm rdesktop conky nmap rcconf network-manager-gnome firmware-linux firmware-atheros firmware-b43-installer firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-intelwimax firmware-ipw2x00 firmware-ivtv firmware-iwlwifi firmware-libertas firmware-myricom firmware-netxen firmware-qlogic firmware-ralink firmware-realtek gparted hfsprogs ntfs-3g hfsplus hfsutils dosfstools hplip system-config-printer xsane simple-scan lightdm mate-desktop-environment bash-completion chntpw caja-open-terminal clamav dcfldd bootlogd less mesa-utils numlockx ethtool grub2 mesa-utils ssh gdisk testdisk python-tk iftop nethogs pm-utils dmraid unrar
De la même manière, le format doit respecter la syntaxe xxx.list.chroot pour être pris en compte lors de la construction de l’image.
Puis on peut lancer la construction à proprement parler, en root :
sudo lb build
Qui amène à la création d’un fichier binary.hybrid.iso dans le dossier courant, prêt à être gravé sur cd ou dumpé sur clé usb avec la commande
dd if=./binary.hybrid.iso of=/dev/sdX
Pour plus d’infos, ne pas oublier de consulter les mans :
man live-build
man lb config