Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
applications:personnalisation:customisationcd [Le 25/02/2007, 10:42]
thedamocles Déplacée vers http://doc.ubuntu-fr.org/tutoriel/comment_customiser_le_cd_installation
— (Version actuelle)
Ligne 1: Ligne 1:
-Ce howto provient de 
-http://​lenerve.free.fr/​dotclear/​index.php?​2006/​08/​14/​20-customisation-du-livecd-ubuntu 
-qui se base sur  
-https://​help.ubuntu.com/​community/​LiveCDCustomization/​6%2e10 
-http://​www.atworkonline.it/​~bibe/​ubuntu/​custom-livecd.htm 
-http://​lichota.net/​~krzysiek/​projects/​ubuntu-livecd-customization/​ pour la partie francisation 
-Le script de montage des partitions au boot du live cd est basé sur celui disponible ici: 
-http://​www.ubuntulinux.nl/​files/​diskmounter 
  
-=== 0.Prérequis === 
-Il nous faut les paquets suivants : 
-squashfs-tools mkisofs xdialog 
-qemu pour tester et faire les ultimes customisations 
- 
-   sudo apt-get install squashfs-tools mkisofs xdialog 
- 
-et il faut environ 5 Go de disponible. 
- 
-=== 1. Télécharger le liveCD === 
-  wget http://​fr.releases.ubuntu.com/​xubuntu/​6.06.01/​release/​xubuntu-6.06-desktop-i386.iso 
- 
-=== 2. Création de la variable (WORK) pointant vers le répertoire de travail === 
-(ici : mylivecd à la racine de mon répertoire home) 
- 
-  export WORK=~/​mylivecd 
-  mkdir -p $WORK 
- 
-=== 3. Montage de l'iso du liveCD === 
- 
-  sudo mount -t iso9660 -o loop /repertoire vers/​xubuntu-6.06-desktop-i386.iso /cdrom 
- 
-=== 4. Copie de l'​image === 
- ​Maintenant,​ on va copier l'​intégralité de l'​image vers un nouveau répertoire,​ lui réglé avec les permissions d'​écriture,​ et pour finir, démontage de l'iso. 
- 
-  cd $WORK 
-  mkdir ubuntu-livecd 
-  cp -a /cdrom/. ubuntu-livecd 
-  chmod -R u+w ubuntu-livecd 
-  sudo umount /cdrom 
- 
- 
-=== 5. Suppression des programmes pour Windows === 
- ​Commençons à faire de la place. Le LiveCD original est fourni avec quelques programmes windows, on peut donc supprimer sans souci ce répertoire (95MB d'​économisé) : 
- 
-  rm -rf $WORK/​ubuntu-livecd/​programs 
- 
-=== 6. Décompression de l'​image === 
- Les répertoires et fichiers du Live CD que vous pouvez voir dans $WORK/​ubuntu-livecd/​ sont nécessaires pour le boot du cd. Le système ubuntu est stocké dans un fichier image compressé $WORK/​ubuntu-livecd/​casper/​filesystem.squashfs. 
-Pour décompresser cette image et pouvoir travailler dessus pour la customisation,​ il faut le module squashfs. 
-On va donc charger ce module, et monter l'​image dans un nouveau répertoire $WORK/old 
- 
-  sudo modprobe squashfs 
-  mkdir $WORK/old 
-  sudo mount -t squashfs -o loop,ro $WORK/​ubuntu-livecd/​casper/​filesystem.squashfs $WORK/old 
- 
-Si vous regardez dans le répertoire $WORK/old, vous pouvez reconnaître le système de fichiers standard d'une Ubuntu. 
- 
-=== 7. Création de l'​image === 
- On va créer une image de 2 Go (taille maximum décompressée du LiveCD, ça nous permet de contrôler la taille de notre customisation sans risquer de dépasser la taille maximum) 
-On crée donc un fichier de 2 Go : 
- 
-  sudo dd if=/​dev/​zero of=$WORK/​ubuntu-fs.ext2 bs=1M count=2147 
- 
-On le formate en EXT2 : 
- 
-  sudo mke2fs $WORK/​ubuntu-fs.ext2 
- 
-mke2fs va nous prévenir que ubuntu-fs.ext2 n'est pas disque réel, on clique sur yes. 
-On crée un nouveau répertoire,​ qu'on lie au système de fichiers que l'on vient de créer : 
- 
-  mkdir $WORK/new 
-  sudo mount -o loop $WORK/​ubuntu-fs.ext2 $WORK/new 
- 
-On copie l'​ancien système de fichiers afin de le modifier : 
- 
-  sudo cp -a $WORK/old/. $WORK/new 
- 
-On peut maintenant démonter $WORK/old : 
- 
-  sudo umount $WORK/old 
- 
-=== 8. Chroot customisation du système === 
-Il faut bien copier /​etc/​resolv.conf dans notre système de fichiers, sinon on n'aura pas accès au réseau, et le téléchargement sera donc impossible. On peut aussi copier le sources.list utilisé habituellement pour avoir accès au dépôts que vous utilisez habituellement. 
- 
-  sudo cp /​etc/​resolv.conf $WORK/​new/​etc/​ 
-  sudo cp /​etc/​apt/​sources.list $WORK/​new/​etc/​apt/​sources.list 
-  sudo mount -t proc -o bind /proc $WORK/​new/​proc 
-  sudo chroot $WORK/new /bin/bash 
- 
-Nous sommes maintenant root du système de fichiers, on peut donc faire toutes les modifications désirées (apt-get remove, install...). Voir la liste des paquets supprimés et installés. 
- 
-   ​apt-get update 
-   ​apt-get remove... 
- 
-On fini par un : 
- 
-    apt-get clean 
-    dpkg-reconfigure console-data # (Sélectionner le clavier français) 
- 
-Une fois que l'on a fini la customisation,​ on sort du chroot : 
- 
-  exit 
- 
-Le LiveCD ne monte pas automatiquement les partitions que vous avez sur votre disque local, il faut passer par l'​utilitaire Système > Administration > Disques 
-Si vous voulez qu'​elles soient montée au boot du livecd, il faut utiliser ces scripts 
-automounter / diskmounter disponible ici : 
- 
-http://​lenerve.free.fr/​download/​automounter.tar.gz 
- 
-A modifier selon vos besoins, dans l'​état il monte les partitions NTFS, FAT et HFS en readonly. La source est disponible dans l'​archive. 
- 
-  sudo cp /rep ou est automounter/​automounter $WORK/​new/​usr/​bin 
-  sudo mkdir $WORK/​new/​local/​share/​diskmounter 
-  sudo cp /rep ou est automounter/​diskmounter/​diskmounter $WORK/​new/​local/​share/​diskmounter 
- 
-Par défaut, les partitions détectées seront montées dans le répertoire /​media/​nomdelapartion 
-Il faudra le rendre exécutable au démarrage dans un deuxième temps (cf point 12). 
- 
-On finit de nettoyer avant de sortir du système. 
- 
-  sudo umount $WORK/​new/​proc 
-  sudo rm $WORK/​new/​etc/​resolv.conf 
- 
-On est de retour dans notre propre système. 
- 
-=== 9. Ultimes modifications === 
-Tout d'​abord,​ il faut régénérer le fichier manifest pour qu'il prenne en compte les modifications dans les paquets. 
- 
-  sudo chroot $WORK/new dpkg-query -W --showformat='​${Package} ${Version}\n'​ 
-  > $WORK/​ubuntu-livecd/​casper/​filesystem.manifest 
- 
-Maintenant, il faut nettoyer l'​espace libre sur le disque. En effet, même si nous avons enlevé des paquets, l'​espace disque qu'ils occupaient conserve toujours les données. On n'a modifié que la TOC, il faut remplir l'​espace avec des zéros afin de les supprimer complètement (il se peut que cela échoue en indiquant qu'il n'y a plus d'​espace libre). Puis, on supprime le fichier zero. 
- 
-   sudo dd if=/​dev/​zero of=$WORK/​new/​dummyfile 
-   sudo rm $WORK/​new/​dummyfile 
- 
-Ainsi les blocs de data sont remplis de zéros. Une fois compressé, tout cela ne tiendra sur quasiment rien. 
- 
-=== 10. Fabrication du système de fichiers compressé === 
- 
-  sudo rm $WORK/​ubuntu-livecd/​casper/​filesystem.squashfs 
-  cd $WORK/new 
-  sudo mksquashfs . $WORK/​ubuntu-livecd/​casper/​filesystem.squashfs 
- 
-Cela prend extrêmement de temps, soyez patient. 
- 
-On peut maintenant démonter $WORK/new 
- 
-  cd $WORK 
-  sudo umount $WORK/new 
- 
-Si vous voulez refaire une petite customisation esthétique,​ voir point 12, ne démontez pas la partition. 
- 
-=== 11. Fabrication du nouveau LiveCD === 
-On regénère un nouveau hash MD5 afin qu'il réflète le nouveau contenu du CD. 
- 
-  cd $WORK/​ubuntu-livecd 
-  sudo find . -type f -print0 |xargs -0 md5sum |sudo tee md5sum.txt 
- 
-On fabrique la nouvelle ISO, ubuntu-new.iso:​ 
- 
-  cd $WORK 
-  sudo mkisofs -o customLivecd.iso -b isolinux/​isolinux.bin -c isolinux/​boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -r -V "​CustomLiveCD"​ -cache-inodes -J -l ubuntu-livecd 
- 
-Une fois que l'iso est crée, vous pouvez la tester en utilisant QEMU. 
- 
-=== 12. Ultimes customisations === 
-Montez votre nouvelle iso avec qemu. Une fois que vous êtes dans le LiveCD, faites toutes les modifications que vous voulez (fond d'​écran,​ raccourcis sur le bureau, programmes à lancer au démarrage). Une fois que vous avez fini, déloguez-vous en cochant la case "​sauvegarde des données"​. Une fois que vous vous êtes delogué, passez en session console (CTRL + ALT + F1) et créez un TAR du dossier home/​ubuntu. 
- 
-   sudo tar cvf fichierdesauvegarde.tar /​home/​ubuntu 
- 
-Copiez le contenu de ce tar dans $WORK/​new/​etc/​skel et reprenez à partir du point 9. 
- 
-=== 13. Francisation de l'iso === 
-Pour ce faire, on peut utiliser ce script : 
-http://​lichota.net/​~krzysiek/​projects/​ubuntu-livecd-customization/​uck-1.1.tgz 
-(dépend de Xdialog, à lancer en console avec un sudo) 
- 
-===14. Tester avec Qemu, graver l'​iso=== 
-Tapez la commande 
-   qemu -cdrom customLivecd.iso 
  • applications/personnalisation/customisationcd.1172396544.txt.gz
  • Dernière modification: Le 18/04/2011, 14:47
  • (modification externe)