Table des matières
Dans un soucis de confort on travaillera sur une copie du système de fichiers qui sera recopié bloc à bloc sur le disque dur et non directement sur la clé USB (temps d'accès Read/Write).
$ sudo dd if=/dev/sda1 of=usb_demo_wsim.raw bs=512
L'utilisation de Chroot permet d'administrer la distribution inactive permettant notamment de ne pas augmenter sa taille. les répertoires de travail et de téléchargement (apt-get, aptitude) se font sur le système actif et non sur le système cible.
La décompression du système du fichiers "filesystem.squash" et sa modification avec Chroot permet d'agir à la fois sur la version "live" exécutée depuis la clé USB mais également sur la version installable. Ainsi, l'installation de notre distribution est fidèle à la version de "démo".
Ci-dessous un résumé du fonctionnement d'une version Live/Installable (Ubuntu) :
Pour modifier le système de fichiers il faut tout d'abord, monter l'image RAW dans un dossier :
$ sudo mount -o loop image.raw mnt
Ensuite, il faut décompresser le système de fichiers avec la commande unsquashfs
$ sudo unsquashfs mnt/casper/filesystem.squashfs
Une fois le système de fichiers décompressé dans /squashfs-root
, Il ne reste plus qu'a effectuer le Chroot sans oublier de copier la configuration réseau de la machine hôte.
$ sudo cp /etc/resolv.conf /mnt/etc/
$ sudo mount /dev/ /mnt/dev -o bind
$ sudo mount /dev/pts /mnt/dev/pts -o bind
$ sudo mount /proc /mnt/proc -o bind
$ sudo mount /sys /mnt/sys -o bind
$ sudo chroot squashfs-root
Chroot mode | |
---|---|
Toutes les commandes que vous executerez ce feront dans le "Chroot", c'est-à-dire sur votre système de fichiers cible. Assurez vous d'avoir |
lsof
)exit
$ sudo umount /mnt/sys
$ sudo umount /mnt/proc
$ sudo umount /mnt/dev/pts
$ sudo umount /mnt/dev
Une fois les modifications terminées, il ne reste plus qu'a recompresser le système de fichiers et le copier au bon endroit dans l'image RAW montée sur /mnt
$ sudo mksquashfs squashfs-root mnt/casper/filesystem.squashfs
QEMU permet d'exécuter un ou plusieurs systèmes d'exploitation (et leurs applications) de manière isolée sur une même machine physique. Ainsi, on peut donc booter sur l'image .raw créée précédemment afin de valider le contenu de la distribution modifiée.
Remarque | |
---|---|
Il existe une interface utilisateur permettant d'alléger son utilisation, Qemu-launcher. |
Voici un exemple d'affichage sous Qemu avec une image RAW :