4.4. Préparation des fichiers pour un amorçage avec une clé USB

Pour préparer une clé USB, vous avez besoin d'un système GNU/Linux fonctionnel et qui accepte les périphériques USB. Vérifiez que le module du noyau usb-storage est chargé (modprobe usb-storage) et trouvez à quel périphérique SCSI la clé USB est affectée (dans cet exemple, c'est /dev/sda). Pour pouvoir écrire sur la clé, il vous faudra enlever la protection contre l'écriture.

Notez que la taille de la clé doit être au moins égale à 128 Mo. Pour des tailles inférieures, voyez Section 4.4.2, « Copie des fichiers — la méthode souple ».

4.4.1. Copie des fichiers — la méthode simple

Le fichier hd-media/boot.img.gz contient tous les fichiers de l'installateur, le noyau et le programme SYSLINUX avec son fichier de configuration. Il vous suffit d'extraire ces fichiers dans votre clé USB :

# zcat boot.img.gz > /dev/sda

Avertissement

Bien sûr toutes les données présentes sur la clé seront détruites. Utilisez le bon périphérique pour votre clé !

Montez ensuite la clé (mount /dev/sda /mnt), qui aura maintenant un système de fichiers FAT , et copiez une image ISO de type netinst ou businesscard. Le nom de ce fichier doit se terminer par .iso. Démontez la clé (umount /mnt) et voilà, c'est fait !

4.4.2. Copie des fichiers — la méthode souple

Si vous aimez la souplesse ou si vous voulez simplement savoir ce qui se passe, vous pouvez utiliser la méthode suivante pour mettre les fichiers sur la clé.

4.4.2.1. Partitionner un périphérique USB sur Intel x86

Nous montrerons comment n'utiliser que la première partition, au lieu de tout le périphérique.

Note

La plupart des clés USB sont préconfigurées avec une seule partition FAT16. Vous n'aurez sans doute pas à partitionner ou à formater la clé. Si vous devez le faire, utilisez le programme cfdisk ou un autre programme de partitionnement pour créer cette partition et saisissez :

# mkdosfs /dev/sda1

Faites attention à utiliser le périphérique correct pour la clé. Le programme mkdosfs se trouve dans le paquet Debian dosfstools.

Pour pouvoir lancer le noyau après l'amorçage sur la clé, nous y mettons un programme d'amorçage. Tous les programmes d'amorçage fonctionnent (p. ex. LILO), mais SYSLINUX est préférable car il utilise une partition FAT16 et peut être reconfiguré en modifiant un simple fichier texte. On peut modifier la configuration du programme d'amorçage avec tous les systèmes d'exploitation qui acceptent le système de fichiers FAT.

Pour mettre SYSLINUX sur la partition FAT16 de la clé, installez les paquets syslinux et mtools sur votre système et faites :

# syslinux /dev/sda1

Encore une fois, faites bien attention à utiliser le nom correct pour la clé. La partition ne doit pas être montée au lancement de SYSLINUX. Cette procédure écrit un secteur d'amorçage sur la partition et crée le fichier ldlinux.sys qui contient le code du programme d'amorçage.

Montez la partition (mount /dev/sda1 /mnt) et copiez les fichiers suivants sur la clé :

  • vmlinuz (noyau binaire)

  • initrd.gz (image du disque virtuel initial)

  • syslinux.cfg (fichier de configuration de SYSLINUX)

  • Modules optionnels du noyau

Si vous voulez modifier le nom des fichiers, remarquez que SYSLINUX ne peut traiter que des noms de type DOS (8.3).

Le fichier de configuration syslinux.cfg doit contenir les deux lignes suivantes :

default vmlinuz
append initrd=initrd.gz ramdisk_size=12000 root=/dev/ram rw

Il faudra peut-être augmenter la valeur du paramètre ramdisk_size selonla taille de l'image qui est amorcée. En cas d'échec, vous pouvez ajouter devfs=mount,dall à la ligne « append »

4.4.2.2. Ajouter une image ISO

Vous pouvez maintenant mettre une image ISO (businesscard, netinst ou même l'image complète) sur la clé. Le nom de cette image doit se terminer par .iso.

Si vous voulez faire une installation sur le réseau, sans utiliser d'image ISO, vous sauterez bien sûr l'étape précédente. De plus vous devrez utiliser le disque virtuel initial qui se trouve dans le répertoire netboot au lieu de celui dans le répertoire hd-media, car le fichier hd-media/initrd.gz ne sait pas utiliser le réseau.

Quand tout est fait, démontez la clé USB (umount /mnt) et activez la protection contre l'écriture.

4.4.2.3. Amorcer la clé USB

Avertissement

Si le système refuse de s'amorcer à partir de la clé, il se peut que la clé possède un secteur principal d'amorçage défectueux. Corrigez-le avec le programme install-mbr qui se trouve dans le paquet mbr :

# install-mbr /dev/sda