Bonjour à tous !
Ayant tout juste terminé ma clé USB Live Lenny perso, je voulais partager les quelques astuces/façons de faire que j’ai découvertes.
Avant de commencer, je tiens à signaler que je me suis largement servi de ce tuto pour faire ma clé, mais il y a eu assez de changement avec la nouvelle Debian-Live pour que je décide d’écrire ma version des choses. Ceci dit, le tuto sus-linké est plus précis techniquement parlant que le mien, il lui est donc complémentaire.
[size=150]1) Installer live-helper[/size]
[size=150]2) Les fichiers config[/size]
Dans le principe, on peut invoquer directement lh_config et lui passer en paramètres tout ce qu’on a à configurer (voir dans les remarques, paragraphe 6)). Je suis plutôt adepte du trifouillage de fichiers config, c’est comme ça qu’on procédera ici.
On crée un espace de travail et on y lance lh_config pour qu’il y crée les fichiers config :
$ mkdir debian_live
$ cd debian_live
$ lh_config
On se retrouve avec un dossier config contenant un certain nombre de fichiers. Les 3 qui nous intéressent sont binary, bootstrap et chroot.
2.1) Configuration de binary
Ouvrir le fichier avec votre éditeur de texte. On remarque que tout y est bien structuré et commenté, donc facile à modifier selon ses besoins.
LH_BINARY_IMAGES=“usb-hdd” : laisser sur iso si vous voulez un CD, passez sur usb-hdd si vous voulez faire une clé
LH_BOOTAPPEND_LIVE=“locale=fr_FR.UTF-8 keyb=fr” : permet d’avoir la localisation en français et le clavier en français au boot
LH_HOSTNAME=“user-desktop” : paramétrer le nom de la machine…
LH_USERNAME=“user” : … et celui de l’user
2.2) Configuration de bootstrap
LH_DISTRIBUTION=“lenny” : pas touché pour ma part, mais vous pouvez récupérer la version que vous voulez
LH_MIRROR_BOOTSTRAP="http://ftp.fr.debian.org/debian/"
LH_MIRROR_CHROOT="http://ftp.fr.debian.org/debian/"
LH_MIRROR_BINARY=“http://ftp.fr.debian.org/debian/” : pour tout récupérer à partir des serveurs fr
LH_SECTIONS=“main contrib non-free” : les dépots à utiliser, of course
2.3) Configuration de chroot
LH_LANGUAGE=“fr” : pas trop testé sur quoi ça impactait, mais ça peut pas faire de mal
LH_LINUX_FLAVOURS=“486 686” : les kernels à installer (je suis mal renseigné là-dessus, mais il me semble que seules les vieilles machines peuvent nécessiter le 486, donc c’est à vous de voir selon l’utilisation de votre clé, mais le gain de place est non-négligeable lorsqu’on n’installe que le 686 sans le 486)
LH_PACKAGES=“firmware-ralink network-manager network-manager-gnome iceweasel mousepad synaptic” : la liste des paquets que vous voulez ajouter au set de base, je me suis contenté du minimum pour faire fonctionner ma carte wifi et un navigateur. Notez bien que les dépendances seront détectées et récupérées automatiquement.
LH_PACKAGES_LISTS=“xfce” : le set de paquets de base à installer, vous en avez la liste exhaustive avec leur contenu dans /usr/share/live-helper/lists/.
[size=150]3) Construction de l’image[/size]
En vous assurant que vous êtes bien dans le dossier “racine” de votre espace de travail live (ici le dossier “debian_live”), vous pouvez passer à la création de l’image :
Selon les paquets que vous avez intégré et le débit de votre connection internet, ça peut durer très (très très) longtemps. Dans mon exemple, avec une connection wifi mais peu de paquets, à peu près 35mn pour le processus complet.
Une fois que votre terminal a fini de mouliner, vous devriez trouver un .img dans votre /debian_live, ainsi qu’un fichier bien pratique, binary.packages, qui liste les packages inclus dans l’image et vous permet donc de vérifier que vos paquets persos ont bien été intégrés.
[size=150]4) Fabriquer la clé et la booter[/size]
Il suffit ensuite de passer votre image sur la clé de votre choix après l’avoir bien repérée dans vos disques (attention la cacastrophe hein).
Exemple :
[code]$ sudo fdisk -l
Disque /dev/sda: 250.0 Go, 250059350016 octets
255 heads, 63 sectors/track, 30401 cylinders
Units = cylindres of 16065 * 512 = 8225280 bytes
Identifiant disque: 0x667abdac
Périphérique Amorce Début Fin Blocs Id Système
/dev/sda1 * 1 2432 19535008+ 83 Linux
/dev/sda2 2433 2675 1951897+ 82 Linux swap / Solaris
/dev/sda3 2676 30401 222709095 83 Linux
Disque /dev/sdb: 80.0 Go, 80026361856 octets
255 heads, 63 sectors/track, 9729 cylinders
Units = cylindres of 16065 * 512 = 8225280 bytes
Identifiant disque: 0x6e731fd3
Périphérique Amorce Début Fin Blocs Id Système
/dev/sdb1 * 1 5100 40960000 7 HPFS/NTFS
/dev/sdb2 5101 9729 37182442+ 5 Extended
/dev/sdb5 5101 9729 37182411 7 HPFS/NTFS
Disque /dev/sdc: 2021 Mo, 2021654016 octets
255 heads, 63 sectors/track, 245 cylinders
Units = cylindres of 16065 * 512 = 8225280 bytes
Identifiant disque: 0x000b277a
Périphérique Amorce Début Fin Blocs Id Système
/dev/sdc1 * 1 40 321268+ 83 Linux[/code]
Ici ma clé est bien évidemment sur sdc, le disque mesurant 2Go et étant détecté en dernier. Je vous conseille, par prudence, de déconnecter tout autre support de stockage externe que vous pourriez confondre avec votre clé, histoire de. Si vous avez le moindre doute, exécutez un outil graphique du genre gparted ou qtparted pour vérifier.
Une fois que vous avez repéré votre clé :
Notez bien qu’il faut entrer le chemin de la clé et non d’une partition. Dans mon exemple, /dev/sdc et non /dev/sdc1.
Une fois que c’est fait, vous n’avez plus qu’à booter sur la clé !
[size=150]5) Pour rejouer[/size]
Si pour une raison quelconque, un changement de paramètre dans un fichier config par exemple, vous vouliez reconstruire votre image, vous avez deux options :
Toujours dans /debian_live, va avoir pour effet de tout virer ou presque à l’exception des fichiers de config que vous pourrez alors peaufiner à votre guise avant de refaire un lh_build complet.
Permet quant à lui de purger le build tout en gardant les binaires récupérés lors des builds précédents. Pratique mais à n’utiliser que si ce que vous changez dans les fichiers config n’implique pas le retrait ou l’ajout de paquets.
[size=150]6) Remarques[/size]
-Prévoir de l’espace libre sur le disque qui accueille votre /debian_live, car au plus gros du processus de build le dossier atteindra quelques gigas (~4Gb dans cet exemple), tout dépendant des paquets que vous incluez.
-Le poids du fichier .img généré dépend évidemment largement des paquets que vous y incluez également. Avec les paquets de cet exemple et un seul kernel (le 686), l’image pèse un peu moins de 300Mb.
-Le système de boot de la clé par défaut est syslinux. Il fonctionne très bien pour moi mais il est possible d’opter pour autre chose grâce aux fichiers config.
-Toute information présente sur la clé avant d’y installer l’image sera évidemment écrasée, quelle que soit sa partition.
-La méthode pour inclure une liste de paquets perso donnée par le tuto cité en intro n’a pas fonctionné chez moi, c’est pourquoi je donne une autre méthode, moins élégante certes, mais fonctionnelle.
-Un installateur peut être inclus à l’image grâce à l’option LH_DEBIAN_INSTALLER du /config/binary, mais cela ne fonctionne qu’avec une image iso à graver sur CD/DVD. De plus (et c’est fort dommage), l’installateur n’installera qu’un système de base et non tous les paquets que vous avez paramétré pour le live.
-Pour le fun et le plaisir des yeux, la commande équivalente à toutes les modifications des fichiers config, paragraphe 2) :
-Et pour les fainéants, la commande kifétou :
[size=150]7) Liens[/size]