Clef usb d'installation

De Le Wiki du Forum-Debian.fr
Aller à la navigation Aller à la recherche

Objectif : créer une clef USB d'installation à partir d'une iso pouvant éventuellement contenir des firmwares manquants pour du matériel récent ou exotique qui n'est pas pris en compte ou pour une machine sans lecteur de disque.

Page mise à jour le 08/09/2017


  Mal utilisée la commande dd est très destructrice! Vérifiez deux fois avant de lancer la commande


Gravure d'une image ISO bootable

Téléchargez une image ISO Debian

Où trouver des images debian :

Debian images: installer images, live images, cloud images
Installation avec l'installateur Debian
Installer Debian 9.2
Backported d-i images archive (Image contenant des firmwares récents - A utiliser avec précaution et en dernier recours

Vérifier la md5 de votre iso!

On va supposer que l'image iso se trouve dans le répertoire "Téléchargements" situé dans le répertoire personnel (~/Téléchargements/)

Déterminez la lettre du disque de votre clef USB

  • Lancez un terminal : gnome-terminal, lxterminal, xterm, ...
  • Insérez une clef USB

Il faut que la clef ait une capacité supérieure à celle de l'image.

  • Comment le système repère-t-il la clef ?

Taper la commande

# fdisk -l}}

La dernière section devrait indiquer la clef récemment branchée.

Par exemple:

Disque /dev/sdi : 3,8 GiB, 4089446400 octets, 7987200 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0xd469af06

Périphérique Amorçage Début     Fin Secteurs Taille Id Type
/dev/sdi1              2048 7987199  7985152   3,8G  b W95 FAT32

On va supposer qu'il s'agit de /dev/sdx dans les commandes suivantes (Et avec /dev/sdx on évitera la bêtes copiés/collés sans réflexion!).

Il faudra changer le x par la lettre indiquée dans la commande fdisk -l ou dmesg (voir ci-dessous)

Etant donné que la commande dd si elle est mal utilisée risque de détruire vos données, je vous conseille de vérifier DEUX fois la lettre du disque.

# dmesg
[13181.662685] usb 3-5: new high-speed USB device number 9 using xhci_hcd
[13181.809824] usb 3-5: New USB device found, idVendor=058f, idProduct=6387
[13181.809829] usb 3-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[13181.809832] usb 3-5: Product: Mass Storage
[13181.809835] usb 3-5: Manufacturer: Generic
[13181.809837] usb 3-5: SerialNumber: F0119309
[13181.810618] usb-storage 3-5:1.0: USB Mass Storage device detected
[13181.810872] scsi host7: usb-storage 3-5:1.0
[13182.824526] scsi 7:0:0:0: Direct-Access     Generic  Flash Disk       8.07 PQ: 0 ANSI: 4
[13182.825108] sd 7:0:0:0: Attached scsi generic sg8 type 0
[13182.825909] sd 7:0:0:0: [sdi] 7987200 512-byte logical blocks: (4.09 GB/3.81 GiB)
[13182.826574] sd 7:0:0:0: [sdi] Write Protect is off
[13182.826578] sd 7:0:0:0: [sdi] Mode Sense: 23 00 00 00
[13182.827244] sd 7:0:0:0: [sdi] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[13182.830621]  sdi: sdi1
[13182.832571] sd 7:0:0:0: [sdi] Attached SCSI removable disk

Assurez-vous que la clef USB n'est pas montée

Il faut vous assurer qu'aucune partition de la clef n'est montée: Tapez la commande mount pour vérifiez

REMPLACEZ LA LETTRE PAR CELLE DE VOTRE CLEF:

# mount | grep /dev/sdi
/dev/sdi1 on /media/laurent/5307-454D type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)

Bingo, la partition 1 est montée dans /media/laurent/5307-454D

ATTENTION: Si vous éjectez la clef elle ne sera plus visible par le système. N'utilisez donc pas l'éjection de votre navigateur de fichier.

On démonte et on revérifie:
# umount /dev/sdi1
# mount | grep /dev/sdi
#

Gravure de l'iso

  • Pour installer l'iso taper les commande
# cd /home/laurent/Téléchargements/
# dd if=VotreNetinstall.iso of=/dev/sdx

Bien entendu si votre clef est bien /dev/sdx (adaptez en modifiant le b de sdx !)

Soyez patient, cela peut prendre un moment... Tout interruption rendrait la clef inutilisable en l'état.

Exemple:

# dd if=debian-live-9.0.1-amd64-xfce.iso of=/dev/sdi
3794304+0 enregistrements lus
3794304+0 enregistrements écrits
1942683648 bytes (1,9 GB, 1,8 GiB) copied, 698,234 s, 2,8 MB/s

Utilisation de l'espace restant pour disposer des firmwares non-free

  • Pour pouvoir utiliser la place restant libre dans la clef, tapez la commande (il faut les droits root) :

si sudo a été configuré:

sudo fdisk /dev/sdb     

ou si sudo n'a pas été configuré

su -c 'fdisk /dev/sdb'  

Vous verrez affichée une partition type 17, c'est à dire de type iso9660, et de la place disponible. Tapez les commandes suivantes

n                           (nouvelle partition)
p                           (principale)
2                           (la deuxième car la première, c'est l'iso)
<entrée>                    (prendre le nombre suggéré)
<entrée>                    (prendre le nombre suggéré)
t                           (change le type de partition)
2                           (le changement s'effectue pour la partition n°2, la n°1 contenant l'iso)
c                           (partition de type FAT32, tapez l pour les types de partition possibles)
w                           (écrit les changements sur la clef et termine la mise en action de fdisk)


  • Il faut formater ensuite la partition /dev/sdb2 que l'on vient de créer. Tapez les commandes :
sudo umount /dev/sdb2
sudo mkfs.vfat /dev/sdb2         

qui formate la partition en FAT32 Pour d'autres types de partition, mkfs.ext3 ... Voir avec "man mkfs" les différents types possibles.

  • À ce stade la clef est boutable se comportant comme le CD de la netinstall.

Vous avez la possibilité de mettre sur cette même clef tous les firmwares que vous voulez. Il suffit de les déposer à la racine de la partition sdb2. C'est la partition que l'on peut voir quand on insère la clef dans la prise USB de l'ordinateur. Si à l'installation, on vous demande un éventuel firmware, enchaînez sur Oui, le firmware sera trouvé à la racine de la partition sdb2 et l'installation continuera.

Il faut souligner que ces firmwares ne sont pas installés mais juste utilisés par l'installateur. Usuellement celui-là charge également les paquets nécessaires mais si ceux-là proviennent de "firmwares-non-free", il faut rajouter les dépôts "non-free" aux sources.list.

Cela peut se traduire par une carte réseau non fonctionnelle au redémarrage de la machine. Dans ce cas, une possibilité est de recopier les firmwares de la machine installée dans le répertoire /lib/firmware, puis de redémarrer (on récupère alors le réseau) et d'installer enfin les paquets firmwares nécessaires.

  • Où trouver les firmwares ?

Pour ceux qui veulent les "commons firmwares non-free" : http://cdimage.debian.org/cdimage/unofficial/non-free/firmware/

http://boisson.homeip.net/debian/firmwares.tgz (firmware debian plus quelques autres)