Installation via clé USB et sans réseau d'une Debian testing

(Merci à lol et ginkgo biloba pour les infos, darkheart pour le test !)

Vous avez tout testé, DebianLive, le zcat du boot.img.gz etc. mais tout ceci n’a pas fonctionné pour des raisons diverses ?

Je vais vous présenter une méthode “à l’ancienne” en utilisant directement syslinux qui a l’avantage de:
[ul]
[li] pouvoir être mise en oeuvre sur n’importe quel Linux (remplacez juste apt-get par yum et cela fonctionne sur une distro comme Fedora), *BSD, et même Windoze ![/li]
[li] ne nécessiter “que” 700Mb de libre sur votre disque dur, et vous pouvez choisir votre ISO, ce qui est sympa si vous voulez utiliser le CD 1 Xfce/LXde ou KDE au lieu de celui par défaut (Gnome).[/li][/ul]

Elle a par contre les inconvénients suivants:
[ul]
[li] l’installeur Debian a parfois besoin d’un coup de pied aux fesses pour trouver la bonne ISO[/li]
[li] un peu plus difficile à mettre en place que via DebianLive sans aucune expérience sous Linux[/li][/ul]

Ce tuto est inspiré de cet article de Debian wiki en anglais: wiki.debian.org/InstallToUsbMemoryStick.

Tout ce qui commence par # doit être effectué en root, et ici /dev/sdb représente ma clé USB.Lisez attentivement surtout, chaque mot compte !

Ca commence tout de suite en vous indiquant que toutes les données de votre clé USB seront supprimés, faites donc une sauvegarde si besoin est !

[size=150]Preparation [/size]

Il vous faut une partition en FAT16 d’au moins 1GB sur la clé usb, en première position (sdb1 par exemple). On commence par installer les outils nécessaires, on démonte la clé et on créé la partition:

# apt-get install mbr dosfstools syslinux
# umount /dev/sdb1
# mkdosfs /dev/sdb1
# fdisk -l
[les infos de /dev/sda]
Disk /dev/sdb: 1031 MB, 1031798784 bytes
32 heads, 62 sectors/track, 1015 cylinders
Units = cylinders of 1984 * 512 = 1015808 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1        1015     1006849    e  W95 FAT16 (LBA)

Si le “Boot” n’a pas de ‘*’, utilisez cfdisk (ou tout autre utilitaire de partitionnement) pour le mettre en place:

# cfdisk /dev/sdb
# fdisk -l #pour vérifier

[size=150]Remplir la clé avec les composants nécessaires[/size]

On va récupérer le initrd et vmlinuz nécessaires au boot chez Joey :

$ mkdir ~/debian-installer && cd ~/debian-installer
$ wget http://people.debian.org/~joeyh/d-i/images/daily/hd-media/initrd.gz
$ wget http://people.debian.org/~joeyh/d-i/images/daily/hd-media/vmlinuz

Ensuite, avec votre éditeur préféré, créer le fichier ~/debian-installer/syslinux.cfg en y mettant ceci :

default vmlinuz
append initrd=initrd.gz

Maintenant, on prépare la clé bootable et on copie tout ça sur la clé:

# syslinux /dev/sdb1
# cd /home/vous/debian-installer
# cp initrd.gz vmlinuz syslinux.cfg /mnt

Ensuite téléchargez l’ISO et mettez là sur votre clé avec un nom de fichier au format “8.3” vu que c’est du fat16 (ici l’ISO standard, mais vous pouvez prendre la Xfce ou la KDE):

$ wget -c http://cdimage.debian.org/cdimage/weekly-builds/i386/iso-cd/debian-testing-i386-CD-1.iso
# mv debian-testing-i386-CD-1.iso /mnt/debian.iso
# ls /mnt
debian.iso  initrd.gz  ldlinux.sys  syslinux.cfg  vmlinuz
# umount /mnt
# install-mbr /dev/sdb #sdb, pas sdb1 sinon vous perdez tout !

Le ‘mv’ est important, sinon avec un ‘cp’, le programme d’install va utiliser l’iso sur le disque dur car il cherche sur le disque dur en premier au lieu de la clé USB, et ça n’est pas forcément ce que vous voulez… je pense que c’est un bug dans l’installer.

Il est d’ailleurs recommandé de renommer les éventuelles autres .iso présents sur le disque dur en .xxx, car le programme d’installation est assez “vorace” quand il recherche des iso (dans mon cas, il a voulu utiliser une image iso xubuntu…).

Aussi, si vous avez qemu installé, vous pouvez tester le fonctionnement de la clé:

[size=150]L’install proprement dite[/size]

Installez comme d’habitude, vous pouvez tomber sur un écran rouge parce que l’installer trouve pas d’iso. Pas de panique :
[ul]
[li] Appuyez sur entrée, vous vous retrouvez sur le menu principal[/li]
[li] Sélectionnez “charger des composants depuis une image iso”[/li]
[li] Ca va rechercher encore une fois, mais cette fois ci il va trouver l’ISO dans la clé USB, et au final vous devez avoir un message indiquant:

[li] Le menu des composants va apparaître, choisissez continuer sans rien selectionner, à part si vous avez besoin d’un truc bien spécifique (crypto etc.)[/li]
[li] Ensuite l’install reprends son cours comme si c’était sur CDROM[/li][/ul]

Voila :slightly_smiling: