Cet article ou cette section est un candidat pour passer à des images disque Multiboot.
Une clé USB multiboot permet de démarrer plusieurs fichiers ISO à partir d’un seul périphérique. Les fichiers ISO peuvent être copiés sur l’appareil et démarrés directement sans les décompresser au préalable. Il existe plusieurs méthodes disponibles, mais elles peuvent ne pas fonctionner pour toutes les images ISO.
Utilisation de périphériques GRUB et loopback
Cet article ou cette section nécessite des améliorations de langage, de syntaxe wiki ou de style. Voir Aide: Style pour référence.
Avantages:
- une seule partition requise
- tous les fichiers ISO se trouvent dans un répertoire
- l’ajout et la suppression de fichiers ISO sont simples
Inconvénients:
- toutes les images ISO ne sont pas compatibles
- le menu de démarrage d’origine du fichier ISO n’est pas affiché
- il peut être difficile de trouver une entrée de démarrage fonctionnelle
Préparation
Cet article ou cette section doit être élargi.
Créez au moins une partition et un système de fichiers pris en charge par GRUB sur la clé USB. Voir Partitionnement et systèmes de fichiers # Créer un système de fichiers. Choisissez la taille en fonction de la taille totale des fichiers ISO que vous souhaitez stocker sur le lecteur et prévoyez de l’espace supplémentaire pour le chargeur de démarrage.
Installation de GRUB
Installation simple
Montez le système de fichiers situé sur la clé USB:
# mount /dev/sdXY /mnt
Créez le répertoire /boot:
# mkdir /mnt/boot
Installez GRUB sur la clé USB:
# grub-install --target=i386-pc --recheck --boot-directory=/mnt/boot /dev/sdX
Si vous souhaitez démarrer des ISO en mode UEFI, vous devez installer grub pour la cible UEFI:
# grub-install --target=x86_64-efi --removable --boot-directory=/mnt/boot --efi-directory=/mnt
Pour UEFI, la partition doit être la première dans une table de partitions MBR et formatée avec FAT32.
Démarrage UEFI GPT+BIOS GPT/MBR hybride
Cette configuration est utile pour créer une clé USB universelle, amorçable partout.Tout d’abord, vous devez créer une table de partition GPT sur votre appareil. Vous avez besoin d’au moins 3 partitions :
- Une partition de démarrage du BIOS (code de type gdisk
EF02
). Cette partition doit avoir une taille de 1 Mo - Une partition système EFI (code de type gdisk
EF00
avec un système de fichiers FAT32). Cette partition peut être aussi petite que 50 MiO. - Votre partition de données (utilisez un système de fichiers pris en charge par GRUB). Cette partition peut occuper le reste de l’espace de votre disque.
L’exactitude factuelle de cet article ou de cette section est contestée.
Ensuite, vous devez créer une table de partition MBR hybride, car définir l’indicateur de démarrage sur la partition MBR de protection pourrait ne pas suffire.
Exemple de création de table de partition hybride MBR à l’aide de gdisk:
N’oubliez pas de formater les partitions:
# mkfs.fat -F32 /dev/sdX2# mkfs.ext4 /dev/sdX3
Vous pouvez maintenant installer GRUB pour prendre en charge à la fois EFI + GPT et BIOS + GPT/MBR. La configuration de GRUB (directoryboot-directory) peut être conservée au même endroit.
Tout d’abord, vous devez monter la partition système EFI et la partition de données de votre clé USB.
Un exemple de ceci serait le suivant:
# mount /dev/sdX3 /mnt# mkdir -p /mnt/boot/EFI# mount /dev/sdX2 /mnt/boot/EFI
Ensuite, vous pouvez installer GRUB pour UEFI avec:
Dans la plupart des cas, EFI_MOUNTPOINT
correspondra au sous-répertoire /mnt/boot/EFI
sur votre disque USB monté.
# grub-install --target=x86_64-efi --recheck --removable --efi-directory=/EFI_MOUNTPOINT --boot-directory=/DATA_MOUNTPOINT/boot
Et pour le BIOS avec:
# grub-install --target=i386-pc --recheck --boot-directory=/DATA_MOUNTPOINT/boot /dev/sdX
Comme solution de secours supplémentaire, vous pouvez également installer GRUB sur votre partition de données amorçable par MBR:
# grub-install --target=i386-pc --recheck --boot-directory=/DATA_MOUNTPOINT/boot /dev/sdX3
Configuration de GRUB
À l’aide d’un modèle
Il existe des projets git qui fournissent des fichiers de configuration GRUB préexistants, et un bon générique grub.cfg
qui peut être utilisé pour charger les autres entrées de démarrage à la demande, en ne les affichant que si les fichiers ISO spécifiés – ou les dossiers les contenant – sont présents sur le trajet.
Multiboot USB: https://github.com/aguslr/multibootusb
GLIM (GRUB2 Live ISO Multiboot): https://github.com/thias/glim
Configuration manuelle
Pour les besoins d’une clé USB multiboot, il est plus facile de modifier grub.cfg
à la main au lieu de le générer. Vous pouvez également effectuer les modifications suivantes dans /etc/grub.d/40_custom
ou /mnt/boot/grub/custom.cfg
et générer /mnt/boot/grub/grub.cfg
en utilisant grub-mkconfig.
Comme il est recommandé d’utiliser un nom persistant au lieu de /dev/sdxY
pour identifier la partition sur la clé USB où se trouvent les fichiers image, définissez une variable pour plus de commodité pour conserver la valeur. Si les images ISO se trouvent sur la même partition que GRUB, utilisez ce qui suit pour lire l’UUID au démarrage :
/mnt/boot/grub/grub.cfg
# chemin d'accès à la partition contenant des images ISO (en utilisant UUID) probe-urootrootsetset=rootuuidset imgdevpath="/dev/disk/by-uuid/rorootuuid"
Ou spécifiez explicitement l’UUID:
/mnt/ boot / grub / grub.cfg
# chemin d'accès à la partition contenant des images ISO (en utilisant UUID) set imgdevpath="/dev/disk/by-uuid/UUID_value"
Vous pouvez également utiliser l’étiquette du périphérique au lieu de UUID:
/mnt/boot/grub/grub .cfg
# chemin d'accès à la partition contenant des images ISO (en utilisant des étiquettes) set imgdevpath="/dev/disk/by-label/label_value"
L’UUID ou l’étiquette nécessaire peut être trouvé en utilisant lsblk -f
. N’utilisez pas la même étiquette que l’Arch ISO pour le périphérique USB, sinon le processus de démarrage échouera.
Pour terminer la configuration, une entrée de démarrage pour chaque image ISO doit être ajoutée sous cet en-tête, voir la section suivante pour des exemples.
Entrées de démarrage
On suppose que les images ISO sont stockées dans le répertoire boot/iso/
sur le même système de fichiers où GRUB est installé. Sinon, il serait nécessaire de préfixer le chemin d’accès au fichier ISO avec l’identification du périphérique lors de l’utilisation de la commande loopback
, par exemple loopback loop (hd1,2)$isofile
. Comme cette identification des appareils n’est pas persistante, elle n’est pas utilisée dans les exemples de cette section.
On peut utiliser le nom de périphérique de bloc persistant comme ceci. Remplacez l’UUID en fonction de l’UUID de votre système de fichiers ISO.
Version mensuelle d’Arch Linux
Voir aussi archiso.
Voir README.bootparams pour les options archiso prises en charge en ligne de commande du noyau.
Memtest86+
Memtest86+ est inclus dans l’ISO mensuelle.
archboot
Voir aussi archboot.
En utilisant Syslinux et memdisk
En utilisant le module memdisk, l’image ISO est chargée en mémoire et son chargeur de démarrage est chargé. Assurez-vous que le système qui va démarrer cette clé USB dispose d’une quantité suffisante de mémoire pour le fichier image et le système d’exploitation en cours d’exécution.
Préparation
Assurez-vous que la clé USB est correctement partitionnée et qu’il existe une partition avec un système de fichiers pris en charge par Syslinux, par exemple fat32 ou ext4. Ensuite, installez Syslinux sur cette partition, voir Syslinux #Installation sur le BIOS.
Installer le module memdisk
Le module memdisk n’a pas été installé lors de l’installation de Syslinux, il doit être installé manuellement. Montez la partition sur laquelle Syslinux est installé dans /mnt/
et copiez le module memdisk dans le même répertoire où Syslinux est installé :
# cp /usr/lib/syslinux/bios/memdisk /mnt/boot/syslinux/
Configuration
Après avoir copié les fichiers ISO sur la clé USB, modifiez le fichier de configuration Syslinux et créez des entrées de menu pour les images ISO. L’entrée de base ressemble à ceci :
boot/syslinux/syslinux.cfg
ÉTIQUETTE some_label LINUX memdisk INITRD/chemin/vers/image.iso AJOUTER iso
Voir memdisk sur le wiki Syslinux pour plus d’options de configuration.
Mise en garde pour les systèmes 32 bits
Lors du démarrage d’un système 32 bits à partir d’une image supérieure à 128 Mo, il est nécessaire d’augmenter l’utilisation maximale de la mémoire de vmalloc. Ceci est fait en ajoutant vmalloc=valueM
aux paramètres du noyau, où value
est plus grand que la taille de l’image ISO en MiB.
Par exemple, lors du démarrage du système 32 bits à partir de l’ISO d’installation Arch, appuyez sur la touche Tab
au-dessus de l’entrée Boot Arch Linux (i686)
et ajoutez vmalloc=768M
à la fin. Sauter cette étape entraînera l’erreur suivante lors du démarrage :
modprobe: ERROR: could not insert 'phram': Input/output error
Outils automatisés
- GRUB2 Live ISO Multiboot (GLIM) — Un ensemble de fichiers de configuration GRUB pour transformer une clé USB au format VFAT avec des images ISO de distribution GNU/ Linux en une clé USB multiboot.
https://github.com/thias/glim |/ non empaqueté ? recherche dans AUR
- liveusb-builder – Une suite de scripts pour créer une clé USB multiboot pour les distributions GNU / Linux
https://github.com/mytbk/liveusb-builder||liveusb-builder-gitAUR
- MultiBootUSB – Un logiciel Python multiplateforme avec des interfaces CLI et GUI qui vous permet d’installer et de supprimer plusieurs images Linux en direct sur une clé USB.
https://github.com/mbusb/multibootusb|/multibootusbAUR
- MultiSystem — Un outil graphique qui permet d’installer, de gérer et de supprimer plusieurs images ISO sur un périphérique USB.
http://liveusb.info/dotclear/|/multisystemAUR
- Ventoy – Un outil open source pour créer un lecteur USB amorçable pour les fichiers ISO / WIM / IMG / VHD(x) /EFI. Vous n’avez pas besoin de formater le disque encore et encore, il vous suffit de copier les fichiers sur la clé USB et de les démarrer directement.
https://www.ventoy.net|//ventoy-binAUR