Livre de création de SliTaz

Index des documents du scratchbook de SliTaz, construction pas à pas d'un mini système GNU/Linux Live et installable.

Table des matières

LiveCD

Introduction

Le scratchbook vous permet de suivre la création de la première version public du LiveCD de SliTaz et de faire un voyage au coeur d'un système GNU/linux. Vous serez ensuite capable de personnaliser votre nouveau système ou de créer votre propre distro autonome fonctionnant en mémoire vive (RAM), et pleinement installable, sur disque dure ou clé USB. Une fois démarré, vous pouvez enlever le cd-rom et SliTaz fonctionne encore. SliTaz peut aussi être utilisé comme environnement dans lequel on se chroot, ou comme cd-rom multitâches. Le seul prérequis est une distribution hôte dans laquel nous allons piquer des bibliothèques, utiliser le compilateur, et les outils de développement. Ce système hôte peut-être: un environnement de développement chrooté, un distro minimal, SliTaz installé sur un disque dur ,ou une distro "généraliste" tel que Debian, Slackware, Fedora, Mandriva, Gentoo, Arch, etc. A noter que nous n'installons rien dans le système hôte lors de nos commandes.

SliTaz utilise BusyBox, comme base du système et le noyau Linux. BusyBox c'est le couteaux Suisse de l'embarqué, utilisant une faible empreinte mémoire, et fournissant beaucoup de fichiers d'exemples. Busybox est donc notre principale source d'informations, c'est un utilitaire issu du projet Debian. Nous utilisons et chérissons cette fabuleuse ditribution, nous ne pouvons donc, que vous conseiller d'utiliser Debian GNU/Linux.

SliTaz utilise le bootloader Syslinux et une archive initramfs du système, compresée avec cpio. Cette archive est ensuite décompréssée en mémoire vive lors du boot par le noyau, dans un système sans taille fixe, en gardant le contrôle sur init. Lors des copies ou compilation d'applications on utilisera strip pour nettoyer les réperoires. Les logiciels genisoimage et mkisofs peuvent être utilisés à choix pour la création des images iso. Pour finir vous pouvez tester l'image .iso avec Qemu ou en gravant l'image sur un cdrom réinscriptible.

Organisation du répertoire de travail

Pour créer SliTaz, nous utilisons un répertoire de travail et plusieurs sous-répertoires. Que vous ayez un environnement chrooté pour développer, ou un système hôte, nous proposons d'utiliser un répertoire nommé distro/, pour travailler. Le répertoire distro/ peut être un simple dossier, ou une partition, mais vous êtes évidemment libre, de mettre tous cela ailleur.

distro/

Contenu du répertoire de travail:

Par la suite, l'initramfs et l'image ISO bootable (slitaz-cooking.iso) seront crées à la racine du répertoire de travail SliTaz/.

Option: rootfs.ext2 - Utilisation d'un disque dure virtuel

Option: rootfs.ext2 (root file system in ext2). C'est un disque dur virtuel, formaté en ext2 et monté en boucle sur rootfs/. Un périphérique de boucle, permet d'utiliser un fichier comme s'il s'agissait d'un périphérique normal (disque dur, disquette, etc), pour construire un système de fichiers dedans. Ce fichier peut être du nombre de méga-octets que vous désirez, nous vous proposons 20480 kb, ce qui correspond à un 20 Mb:

 # dd if=/dev/zero of=rootfs.ext2 bs=1k count=20480

Création d'un système de fichier ext2 sur le fichier rootfs.ext2, l'option -F force le formatage du fichier. A noter que que l'utilisation de l'option -m 0, n'alloue aucune place à l'utilisateur root, par défaut elle occupe environ 5%, et l'option -t défini le type du système de fichier à utiliser, tel que ext2, ou ext3:

 # mkfs -t ext2 -F -m 0 rootfs.ext2

Nous pouvons maintenant monter rootfs.ext2 en boucle, grâce à l'option -o loop fournie par l'utilitaire mount, et cela dans le répertoire rootfs/. Vous pouvez vérifier si le montage c'est bien effectué avec la commande df -h:

 # mkdir rootfs
 # mount -o loop rootfs.ext2 rootfs
 # df -h

A la fin de la session de travail, vous pouvez démonter le volume avec umount:

 # umount rootfs

Vous serez maintenant, sûrement intéressé par la construction du système de base SliTaz.

Copyright © SliTaz - GNU General Public License;
Documentation publiées sous GNU Free Documentation License et codée en xHTML 1.0 valide.