le monde de crabs (Christophe Cazajus)

Installateur Slackware sur disque USB externe en XFS

Installer Slackware sans DVD

Attention Cette méthode a été testée avec Slackware 13.0 et 13.1 en mode 32 et 64 bits. Attention

Merci à Eric Hameleers aka Alien BOB pour son script usbimg2disk.sh qui prépare un installateur Slackware sur un disque USB formaté en FAT. Je me suis inspiré de son travail en particulier l'adaptation des scripts d'install pour que les menus de setup présente les défauts corrects pour la localisation et le chemin d'accès au packages.

Ce travail est un premier pas pour la réalisation d'un disque USB auto-alimenté qui permettra de lancer simultanément des distributions telles que Slax (live) ou Salix OS (live ou installateur), des installateurs Slackware Linux, System Rescue CD (live)...

A l'heure des disques durs USB externes auto-alimentés, il devient intéressant de ne plus graver des DVD mais d'avoir sous la main plusieurs versions de l'installateur Slackware Linux...

Pour créer un disque dur XFS qui sache booter plusieurs installateurs Slackware, il faut disposer de GRUB2. Ce sera donc la première étape. Ensuite, il faudra correctement formater le disque dur, j'ai retenu XFS comme système de fichier. On verra que le label à de l'importance. Par la suite, il faut adapter l'installateur contenu dans initrd afin qu'il pointe directement sur les bonnes options et le bon chemin. La copie des fichiers contenus dans l'ISO et la configuration de GRUB terminerons le travail.

Dans la suite de ce document, vous êtes connecté root...

GRUB2

Installer GRUB2 sur sa Slackware n'est pas synonyme de disparition de LILO. Ainsi je garde LILO comme gestionnaire de démarrage, mais je n'ai pas réussi à booter correctement mon disque externe avec un autre produit que GRUB2...

GRUB2 (la version 1.98 lors de la rédaction de cet article) s'installe comme tout produit du domaine public.

Après avoir téléchargé sur le site gnu grub2, on déroule les opérations suivantes :

# tar xf .../grub-1.98.tar.gz
# cd grub-1.98
# ./configure --prefix=/usr
# make
# make install

Formatage XFS du disque USB

Rien de très compliqué, mais il faut choisir son label avec soin, il servira par la suite... On suppose que le disque USB apparaît avec le nom /dev/sdb et que la partition retenue sera /dev/sdb1. Avant de commencer il faut s'assurer que le disque est démonté et qu'il ne contient plus aucune donnée à préserver...

# mkfs.xfs -f -L CrabsUsbBoot /dev/sdb1
# sfdisk -R /dev/sdb

On peut procéder au montage, on considèrera dans la suite de cette page que le point de montage sera /media/CrabsUsbBoot.

Informations importantes

Nous effectuerons les opérations suivantes en partant du principe que nous travaillons avec Slackware 13.1 (32bits).

Il faut penser à adapter les "trucs" suivants pour changer de versions de Slackware :

Montage de l'image ISO

Après avoir soigneusement téléchargé Slackware Linux (i-e. avoir vérifié au moins la signature), il faut procéder au montage de l'image.

adpater le nom de l'image ISO

# mount -o loop,ro slackware-13.1-install-dvd.iso /mnt/cdrom

Adapter l'installateur

Les étapes suivantes évitent d'avoir à monter la zone de packages et de saisir le chemin lors de l'installation.

on crée un dossier de travail

# mkdir initrd
# cd initrd

on extrait les fichiers contenu dans initrd

# gunzip -cd /mnt/cdrom/isolinux/initrd.img | cpio -i -d -H newc --no-absolute-filenames

modification des menus de l'installateur

# sed -i -e 's# --menu# --default-item 6 --menu#' usr/lib/setup/SeTmedia

Adpater si nécessaire slkins131 et/ou slackware

# sed -i -e "s# 2> \$TMP/sourcedir# /usbinstall/slkins131/slackware 2> \$TMP/sourcedir#" \
   usr/lib/INSdir

ajout du montage du disque USB (adapter le label si vous n'avez pas utilisé CrabsUsbBoot)

# mkdir usbinstall
# echo "mount -t xfs -o ro \$(/sbin/blkid -t LABEL=CrabsUsbBoot | cut -f1 -d:)/usbinstall" \
   >> etc/rc.d/rc.S

on crée le dossier qui accueille le boot (adapter si nécessaire)

# mkdir /media/CrabsUsbBoot/boot/slkins131

construction du initrd

# find . |cpio -o -H newc |gzip > /media/CrabsUsbBoot/boot/slkins131/initrd.img

Copie des fichiers

Nous allons copier le contenu du DVD et les kernels

# rsync -rptHDL --exclude=isolinux /mnt/cdrom /media/CrabsUsbBoot

adapter si nécessaire le nom du dossier

# mv /media/CrabsUsbBoot/cdrom /media/CrabsUsbBoot/slkins131

la copie des kernels

# cp -a /mnt/cdrom/boot/huge* /media/CrabsUsbBoot/boot/slkins131

Configuration et installation de grub

Faire une première installation de grub (adapter si nécessaire le point de montage et le device).

# grub-install --root-directory=/media/CrabsUsbRoot --modules=xfs /dev/sdb

Voici un exemple de fichier /media/CrabsUsbBoot/grub/grub.cfg, vous pouvez recopier les dernières lignes et adapter avec une autre version (label, dossier contenant initrd et les kernels).

insmod biosdisk
insmod part_acorn
insmod part_amiga
insmod part_apple
insmod part_gpt
insmod part_msdos
insmod part_sun
export prefix
export root

set timeout=20
set default=0

menuentry "Slackware 13.1 Installer hugesmp.s" {
    linux /boot/slkins131/hugesmp.s/bzImage initrd=/boot/slkins131/initrd.img load_ramdisk=1 prompt_ramdisk=0 rw SLACK_KERNEL=hugesmp.s
    initrd /boot/slkins131/initrd.img
}

menuentry "Slackware 13.1 Installer huge.s" {
    linux /boot/slkins131/huge.s/bzImage initrd=/boot/slkins131/initrd.img load_ramdisk=1 prompt_ramdisk=0 rw SLACK_KERNEL=huge.s
    initrd /boot/slkins131/initrd.img
}

Refaire une installation de grub.

# grub-install --root-directory=/media/CrabsUsbRoot --modules=xfs /dev/sdb
 

Y a plus qu'à booter sur le disque externe...

Renseignez-vous sur les brevets logiciels en Europe :

NoSoftWarePatents.com (en français)

Les images représentant des sociétes, des associations ou des marques restent associées, par un lien, à ces sociétés, associations ou marques. Elles ne signifie en rien que ces sociétés, associations ou marques soutiennent ce site.

Sauf précision contraire, le contenu de ce site est mis à disposition sous un contrat Creative Commons.

Les informations fournies le sont sans aucune garantie. L'auteur ne pourra être tenu responsable de leurs utilisations.

De par l'utilisation du HTML 4.01 Strict et des CSS 2.1, le monde de crabs sera correctement vu avec les navigateurs respectant ces normes, Mozilla ou FireFox par exemple.

Site : Le Monde de Crabs
Titre : Installateur Slackware sur disque USB externe en XFS
Date du document : 24/10/2010
Auteur : Christophe Cazajus
Mail : crabs(mettre le @)crabs-world.com
ou utiliser ce formulaire de contact
Mots-clé : crabs, monde, francais, francophone, français, slackware, slackware 13.0, slackware 13.1, usb, disk, installer, grub2
Description : A l'heure des disques durs USB externes auto-alimentés, il devient intéressant de ne plus graver des DVD mais d'avoir sous la main plusieurs images de l'installateur de Slackware Linux...
Validation : html, css
The Linux Counter
Info iconelvis iconbash iconphp icongimp iconpovray iconxml iconxslt iconcss iconhtml icon
Slackware Linux
Creative Commons License

Le calendrier et les scores du Stade Toulousain sont accessibles sur cette page : Le monde de crabs et le Stade Toulousain.

Crabs's World : English Section