Connexion

Personnaliser une image live

Personnaliser une image d'un DVD-Live



Ce tutoriel montre comment changer le contenu d'un DVD-LIVE-XXX pour l'adapter à vos besoins. Il décrit une succession d'étapes qui doivent être réalisées dans le même ordre.
  1. Création de l'infrastructure : créer un répertoire de travail où vous effectuerez le travail du début à la fin.
  2. Téléchargement et installation : récupération de l'image ISO originelle et installation des outils nécessaires.
  3. Décompression et changement de racine : décompresser l'image ISO sauvegarder les fichiers utiles pour plus tard, et faire du système décompresser le système courant (chroot)
  4. Opérations dans l'environnement : Configurer et adapter le nouvel environnement à vos besoins, ce qui deviendra le résultat de ce tutoriel.
  5. Post-production et nettoyage : quitter le nouvel environnement et nettoyer.
  6. Création de la nouvelle image : compresser le nouveau système dans une image ISO et l'hybrider pour qu'elle soit utilisable sur un DVD ou avec une clé USB.


Départ



Prérequis



  • une image ISO d'une version LIVE de Mageia (nous avons choisi Mageia 5 kde4 32 bits)
  • au moins 5Go d'espace libre dans la partition /home de votre disque dur pour construire la nouvelle image.

Le répertoire sera créé dans le dossier personnel de l'utilisateur. Si votre utilisateur est nommé wobo, vous créerez /home/wobo/isowork. Tout se passe ensuite dans ce répertoire. Vous pouvez évidemment placer votre répertoire de travail ailleurs, mais adaptez les instructions de ce tutoriel à votre choix.

Création de l'infrastruture et téléchargement de l'image


Ouvrir un terminal. La commande suivantes crée votre répertoire
Code BASH :
mkdir isowork
cd isowork

et ensuite celle çi récupère l'image ISO (au choix)
Citation :
KDE4 32 bits
Code BASH :
wget -c ftp://download.asso-linux-online.fr/download/mageia-5/Mageia-5-LiveDVD-KDE4-i586-DVD/Mageia-5-LiveDVD-KDE4-i586-DVD.iso

GNOME 32 bits
Code BASH :
wget -c ftp://download.asso-linux-online.fr/download/mageia-5/Mageia-5-LiveDVD-GNOME-i586-DVD/Mageia-5-LiveDVD-GNOME-i586-DVD.iso

KDE4 64 bits
Code BASH :
wget -c ftp://download.asso-linux-online.fr/download/mageia-5/Mageia-5-LiveDVD-KDE4-x86_64-DVD/Mageia-5-LiveDVD-KDE4-x86_64-DVD.iso

GNOME 64 bits
Code BASH :
wget -c ftp://download.asso-linux-online.fr/download/mageia-5/Mageia-5-LiveDVD-GNOME-x86_64-DVD/Mageia-5-LiveDVD-GNOME-x86_64-DVD.iso

Installez ensuite les outils nécessaires :
Code BASH :
su
  [donner le mot de passe]
urpmi isomaster squashfs-tools
 

Alternativement, pour utiliser xorriso à la place d'isomaster :
Code BASH :
su
  [donner le mot de passe]
urpmi xorriso squashfs-tools
 

Décompression et changement de racine


Maintenant, démarrer isomaster depuis la console (vous êtes déjà l'utilisateur root)
Code BASH :
isomaster &
 

Dans la partie supérieure, utiliser le bouton "Revenir en arrière" pour naviguer jusqu'au nouveau répertoire isowork
Double cliquer sur le fichier image mageia-tsoin-tsoin.iso. Ceci montrera le contenu de l'image dans la partie inférieure de la fenêtre.
Dans la partie inférieure, double cliquer sur loopbacks, marquer le fichier distrib-lzma.sqfs et cliquer sur le bouton "Extraire“. L'opération est longue. Retourner dans la console mais laisser isomaster ouvert.
Alternative avec xorriso
On monte l'image ISO, on crée un dossier Image_ISO, on l'extrait dedans et on démonte l'image ISO

Code BASH :
mkdir /media/cdiso
mount -o loop -t iso9660 Mageia-5-LiveDVD-KDE4-x86_64-DVD.iso /media/cdiso
mkdir Image_ISO
cp -a /media/cdiso/* Image_ISO
umount /media/cdiso
rm -d -f /media/cdiso
 

Maintenant, nous décompactons le fichier squashfs qui contient le système d'exploitation complet.
Code BASH :
unsquashfs distrib-lzma.sqfs
 

Puis nous sauvegardons certains fichiers de l'image ISO initiale que nous restaurerons plus tard :
Code BASH :
mkdir file_save
mkdir file_save/etc
mkdir file_save/etc/shorewall
mkdir file_save/etc/sysconfig
cp -r squashfs-root/var/lib/shorewall file_save/
cp squashfs-root/etc/hosts file_save/etc/hosts
cp squashfs-root/etc/modprobe.conf file_save/etc/modprobe.conf
cp squashfs-root/etc/modprobe.preload file_save/etc/modprobe.preload
cp squashfs-root/etc/wpa_supplicant.conf file_save/etc/wpa_supplicant.conf
cp squashfs-root/etc/shorewall/interfaces file_save/etc/shorewall/interfaces
cp squashfs-root/etc/sysconfig/network file_save/etc/sysconfig/network
 

Pour la dernière étape, avant de se placer dans le répertoire du système décompacté, il faudra mettre en place une connexion réseau opérationnelle si vous voulez personnaliser votre système. Ensuite vous vous placez dans le répertoire du nouveau système et vous effectuez le changement de racine (c'est-à-dire le chroot).
Code BASH :
systemctl stop network.service   
cd squashfs-root
mount -o bind /dev ./dev
mount -o bind /proc ./proc
mount -o bind /sys ./sys
chroot . /bin/bash
 

Explication de chroot dans Wikipedia
Explication de SquashFS dans Wikipedia

Configuration et personnalisation



Maintenant que vous êtes connecté à un espace virtuel de Mageia KDE, vous êtes prêts à travailler dans le système. Il est judicieux de commencer à établir la connexion réseau. Utiliser l'outil de connexion réseau, pour cela :
Code BASH :
drakconnect
 

Vous utilisez la version texte de l'outil de connexion réseau dans une fenêtre de console - utilisez les flèches, tabulation et Entrée pour choisir et valider les options.
Après l'établissement de la connexion réseau et Internet, vous devriez configurer les dépôts de logiciels comme après une installation normale :
Code BASH :
urpmi.addmedia --distrib --mirrorlist
 

Configuration de la base URPMI, mode console
Vous pouvez maintenant installer et supprimer les logiciels à votre convenance.
Vous pouvez par exemple supprimer les packs de langue étrangères.
(Avec la ligne de commande suivante il reste juste le français)
Code BASH :
urpme -a locales-aa locales-af locales-ak locales-am locales-anp locales-ar locales-as locales-ast locales-ayc locales-az locales-be locales-bem locales-ber locales-bg locales-bho locales-bn locales-bo locales-br locales-brx locales-bs locales-ca locales-crh locales-cs locales-csb locales-cv locales-cy locales-da locales-de locales-doi locales-dv locales-dz locales-el locales-en locales-eo locales-et locales-es locales-eu locales-fa locales-ff locales-fi locales-fo locales-fur locales-fy locales-ga locales-gd locales-gl locales-gu locales-gv locales-ha locales-he locales-hi locales-hne locales-hr locales-hsb locales-ht locales-hu locales-hy locales-ia locales-id locales-ig locales-ik locales-it locales-is locales-iu locales-ja locales-ka locales-kk locales-kl locales-km locales-kn locales-ko locales-kok locales-ks locales-ku locales-kw locales-ky locales-lb locales-lg locales-li locales-lij locales-lo locales-lt locales-lv locales-mag locales-mai locales-mg locales-mhr locales-mi locales-mk locales-ml locales-mn locales-mni locales-mr locales-ms locales-mt locales-my locales-nds locales-ne locales-nhn locales-niu locales-nl locales-no locales-nr locales-nso locales-oc locales-or locales-os locales-pa locales-pap locales-pl locales-ps locales-pt locales-quz locales-ro locales-ru locales-rw locales-sa locales-sat locales-sc locales-sd locales-se locales-shs locales-si locales-sk locales-sl locales-so locales-sq locales-sr locales-ss locales-st locales-sv locales-sw locales-szl locales-ta locales-te locales-tg locales-th locales-the locales-tk locales-tl locales-tn locales-tr locales-ts locales-tt locales-ug locales-uk locales-unm locales-ur locales-uz locales-ve locales-vi locales-wa locales-wae locales-wo locales-xh locales-yi locales-yo locales-yue locales-zh locales-zu
 

Quand vous avez terminer vos ajouts/suppressions de programmes vous pouvez mettre à jour le contenu du live-dvd
Code BASH :
urpmi --auto-update
 

Si vous souhaitez que votre image soit gravée sur un CD, vous devez limiter sa taille en-dessous de 700 Mo.

Retour à la racine d'origine



Quand vous avez terminé le choix des logiciels, et avant de quitter l'environnement "chroot", vous devez arrêter la connexion réseau. Puis, de retour dans l'environnement de base, vous devez démonter les liens et redémarrer le réseau.
Code BASH :
systemctl stop network.service
exit
umount ./dev
umount ./proc
umount ./sys
systemctl start network.service
 

Postproduction et nettoyage


Certains fichiers doivent être supprimés du nouveau système.
Dans le cas d'une configuration réseau en wifi, dans le répertoire squashfs-root, supprimer tous les fichiers dans le répertoire etc/sysconfig/network-scripts/wireless.d
Code BASH :
rm -f etc/sysconfig/network-scripts/wireless.d/*
 

Ensuite, supprimer les fichiers suivants du répertoire squashfs-root :
Code BASH :
rm -f etc/sysconfig/network-scripts/ifcfg-wlan0
rm -f root/bash_history
rm -f var/run/dhclient-wlan0.pid
rm -f var/lock/subsys/shorewall
rm -f var/lib/rpm/installed-through-deps.list.old
rm -f var/lib/dhcp/dhclient-wlan0.leases
rm -f var/lib/shorewall/firewall
 

Maintenant nous allons copier les fichiers d'origine que nous avions sauvegardés et remplacer ceux qui ont été modifiés dans squashfs-root/:
Code BASH :
cp -f -r ../file_save/shorewall var/lib/
cp -f ../file_save/etc/hosts etc/hosts
cp -f ../file_save/etc/modprobe.conf etc/modprobe.conf
cp -f ../file_save/etc/modprobe.preload etc/modprobe.preload
cp -f ../file_save/etc/wpa_supplicant.conf etc/wpa_supplicant.conf
cp -f ../file_save/etc/shorewall/interfaces etc/shorewall/interfaces
cp -f ../file_save/etc/sysconfig/network etc/sysconfig/network
 

Création de la nouvelle image



A la fin, on compacte le nouveau système dans un fichier SquashFS, ce qui peut prendre du temps. Assurez-vous d'être dans le bon répertoire.
Code BASH :
mksquashfs * distrib-lzma.sqfs -comp xz -noappend -no-progress -info -b 1048576
 

Maintenant, retournez à isomaster, qui est encore ouvert. Dans la partie inférieure, supprimer l'ancien fichier distrib-lzma.sqfs en cliquant dessus et sur „Supprimer“ dans le menu. Dans la partie supérieure, naviguez vers /isowork/squashfs-root et selectionnez le nouveau distrib-lzma.sqfs et cliquez sur „Ajouter“.
Quand c'est fait, faites "Fichier-> Enregistrer sous". Choisissez un endroit pour stocker la nouvelle image et donnez lui un nom significatif. Cliquez sur "OK" et voilà !
Alternative
On compresse le contenu du dossier pour obtenir la nouvelle image ISO

Code BASH :
xorriso -as mkisofs -iso-level 3 \
-full-iso9660-filenames\
-volid "Mageia-5-KDE4-LiveDVD" \
-appid "Mageia Linux CD modified" \
-publisher "Magicien" \
-preparer "prepared by Ache and adapted for mageia by Fred6681" \
-eltorito-boot isolinux/isolinux.bin \
-eltorito-catalog isolinux/boot.cat \
-no-emul-boot -boot-load-size 4 -boot-info-table \
-isohybrid-mbr "../Mageia-5-LiveDVD-KDE4-x86_64-DVD.iso" \
-eltorito-alt-boot \
-no-emul-boot \
-isohybrid-gpt-basdat \
-output "../Mageia-5-LiveDVD-KDE4-x86_64-DVD-MODIFIED.iso" "../Image_ISO"


Il reste encore à changer le propriétaire de l'image, puisque pour l'instant, c'est l'utilisateur "root". Changez avec :
Code BASH :
chown user:user nom.iso

user:user est votre nom de login et votre groupe et nom.iso est le nom de l'image ISO.
Si vous voulez utiliser votre image ISO sur un clé USB, vous devez d'abord la rendre hybride.
En tant qu'utilisateur, placez-vous dans le répertoire où se trouve l'image et tapez la commande :
(cette commande est inutile si vous avez utilisez la méthode avec xorriso)
Code BASH :
isohybrid nom.iso

Maintenant, vous pouvez griller un CD, un DVD ou la transférer sur une clé USB. Vous pouvez vous référer à cette page par exemple pour le faire.
Maintenant, vous êtes arrivés à l'étape la plus importante : testez et profitez-en !
Cette page a été vue 1255 fois