Étape 8: construction de l'image système

Un live CD/USB ne fonctionne pas tout à fait comme un système installé sur disque dur. Le système de fichiers est bien présent, mais sous la forme d'un seul fichier compressé en lecture seule, portant l'extension .squashfs. Pour construire un live CD/USB il nous faut donc, avant d'en réaliser l'image .iso, construire cette image compressée du système de fichiers. C'est ce que nous allons apprendre à faire lors de cette étape.

1- Création des répertoires de travail

Dans notre dossier utilisateur, nous créons deux dossiers de travail qui nous servirons pour créer les deux images, celle du système (squashfs), et celle du live CD/USB (iso).

Dans un terminal, nous saisissons

mkdir -p ~/CD/casper ~/construction

L'option -p permet de créer des répertoires imbriqués, ce qui est nécessaire ici puisque nous créons un répertoire /casper dans le dossier /CD qui n'existe pas.

2- Copie des fichiers du système

Nous installons d'abord les paquets casper et lupin-casper nécessaires pour que le live CD/USB puisse correctement lire le système de fichiers :

apt-get install casper lupin-casper

Nous pouvons maintenant copier les fichiers de notre système dans le répertoire de construction, en excluant les répertoires dont nous n'aurons pas besoin :

rsync -av --one-file-system --exclude=/dev/* --exclude=/tmp/* --exclude=/home/* --exclude=/var/tmp/* --exclude=/boot/* --exclude=/root/* --exclude=/var/spool/* --exclude=/media/* --exclude=/etc/fstab --exclude=/etc/mtab --exclude=/etc/hosts / ~/construction

L'option -a de rsync permet de conserver toutes les propriétés des fichiers, l'option -v d'afficher les opérations dans le terminal (ce qui peut être utile en cas de problème).

Nous copions également les fichiers de personnalisation de l'utilisateur courant :

rsync -a ~/.config ~/construction/home/ubuntu/.config
rsync -a ~/.bashrc ~/construction/home/ubuntu/.bashrc
rsync -a ~/Desktop ~/construction/home/ubuntu/Desktop

Nous aurons à résoudre un problème. Si nous laissons les choses en l'état nous aurons, au démarrage, une erreur avec le message suivant : "unable to launch /usr/bin/startlubuntu". Cela est dû au fait que le live CD/USB modifie à la volée le fichier /etc/lxdm/lxdm.conf pour remplacer startlxde par startlubuntu. Il nous faut donc contourner le problème par la création d'un lien symbolique startlubuntu renvoyant vers startlxde :

ln ~/construction/usr/bin/startlxde ~/construction/usr/bin/startlubuntu

3- Construction de l'image compressée du système

Nous commençons pas installer les outils dont nous aurons besoin pour notre opération :

apt-get install squashfs-tools

Nous construisons maintenant l'image système par

mksquashfs ~/construction ~/CD/casper/filesystem.squashfs

Cette opération étant assez longue, c'est l'occasion de s'offrir une petite pause dans notre travail !

En fin d'opération, nous pouvons nous rendre dans le dossier CD/casper. Un clic gauche sur le fichier filesystem.squashfs, puis "Propriétés", nous permet de voir que nous avons obtenu une fichier d'environ 530 Mo, ce qui est très satisfaisant compte-tenu du nombre d'applications ajoutées à notre système.

Nous n'avons plus qu'à construire notre image iso, ce que nous apprendrons à faire lors de notre prochaine étape.

Faire des suggestions sur cet article

Tous les champs sont requis
Merci pour votre contribution.