Comment créer un USB multiboot avec Linux
- 3262
- 629
- Clara Nguyen
Objectif
Créer un périphérique USB démarrable contenant plusieurs distributions Linux.
Exigences
- Un appareil USB avec suffisamment de taille pour contenir plusieurs ISO
- Autorisations racinaires pour modifier les partitions de l'appareil et installer Grub
Difficulté
MOYEN
Introduction
Pouvoir exécuter un système d'exploitation entier directement à partir d'un support d'installation, c'est extrêmement utile: nous pouvons tester une distribution, l'utiliser à des fins de sauvegarde ou peut-être pour réparer un système existant. La façon habituelle de créer un support de démarrage est d'écrire une image système dd
commande ou un outil dédié. Dans ce tutoriel, nous verrons comment créer un périphérique USB multiboot qui peut héberger plusieurs images de distribution.
Un mot sur le bios vs uefi
Uefi
(Interface de firmware extensible unifié) C'est le firmware moderne créé en remplacement de l'héritage Bios
(Système de sortie d'entrée de base). La majorité des distributions Linux récentes peuvent démarrer dans les deux modes sans problème: l'installateur ajustera automatiquement son comportement en conséquence.
Les deux firmwares sont, selon la norme, associées à une disposition spécifique de la table de partition: Uefi
va de pair avec gp
, alors que Bios
vient avec le MSDOS
un. Ces associations, cependant, ne sont pas strictement obligatoires, car, au moins en théorie, un Uefi
Le firmware peut démarrer le processus de démarrage à partir d'un MSDOS
Discage de disque et un héritage Bios
le système peut faire de même à partir d'un gp
disque partitionné.
Dans le premier cas le EFI
La partition doit être la première sur le disque et être formatée avec le fat32
Fileystem, dans ce dernier, un Bios Boot
La partition sans aucun système de fichiers devrait exister, nécessaire pour stocker l'étape 1.5, depuis sur un gp
Disposez l'écart entre l'enregistrement de démarrage maître et la première partition n'existe pas (c'est là que cette étape de la planche est généralement installée).
Nous préparerons notre appareil à l'aide d'un traditionnel MSDOS
Disposition, installation du chargeur de démarrage Grub en mode EFI et héritage pour pouvoir démarrer les distributions à la fois dans Uefi
et Bios
mode.
Préparer l'appareil
La première chose que nous devons faire est de préparer notre appareil. Nous créerons deux partitions, dans l'ordre:
- Un
EFI
cloison - Une partition de données
Le premier est nécessaire pour démarrer dans Uefi
Mode, puisque c'est où Grub-EFI est installé. La partition doit être formatée avec un fat32
système de fichiers. Théoriquement, la configuration fonctionnerait même avec cette partition, car nous pourrions également l'utiliser pour stocker les images de distribution que nous voulons utiliser. Cependant, dans ce cas, nous serions limités, puisque fat32
ne prend pas en charge les fichiers blonder que 4 Go, et certains ISO peuvent dépasser cette taille.
La deuxième partition sera formatée avec un système de fichiers pris en charge par Grub, et hébergera les images et les fichiers de configuration de Grub.
Pour le bien de ce tutoriel, je suppose que l'appareil que nous voulons préparer est / dev / sdb
.
La table de partition et la partition EFI
La première chose à faire est de créer un MSDOS
Tableau de partition sur l'appareil:
$ sudo séparé -s / dev / sdb mklabel msdos
Après cette étape, nous pouvons créer le EFI
partitionner et le formater avec un fat32
système de fichiers. La taille recommandée pour la partition est 550 MIB
: Sur les partitions plus petites, nous pourrions recevoir une erreur telle que «pas assez de grappes pour la graisse 32 bits»:
$ sudo séparé -s / dev / sdb mkpart primaire 1mib 551mib
Nous allons ensuite procéder à l'activation du en particulier
et botte
Frappeurs:
$ sudo séparés -s / dev / sdb set 1 esp sur $ sudo séparés -s / dev / sdb set 1 démarrer sur
Enfin, nous devons créer le fat32
système de fichiers:
$ sudo mkfs.FAT -F32 / DEV / SDB1
La partition de données
L'autre partition que nous devons créer est la partition de données, qui hébergera les images ISO des distributions et les fichiers de configuration de Grub. Nous pouvons ajuster la taille de la partition à nos besoins: plus elle est grande, plus il sera en mesure de contenir. Ici, nous utiliserons tout l'espace restant sur l'appareil:
$ sudo séparé -s / dev / sdb mkpart primaire 551mib 100%
Nous pouvons formater la partition avec l'un des systèmes de fichiers pris en charge par Grub. Dans ce cas, j'utiliserai ext4
:
$ sudo mkfs.ext4 / dev / sdb2
Créez les points de montage et montez les partitions
L'étape suivante consiste à monter le EFI
Partition et la partition de données quelque part dans notre système afin que nous puissions créer les répertoires nécessaires, installer Grub et mettre nos fichiers ISO en place:
# Créez les points Mountpoints $ sudo mkdir / media / efi, data # montez la partition EFI $ sudo mont / dev / sdb1 / média / efi # montez la partition de données $ sudo mont / dev / sdb2 / média / data / data
Installation du chargeur de démarrage Grub
Pour que notre appareil puisse travailler dans les deux héritage
et Uefi
Modes pour lesquels nous devons installer Grub et Grub pour EFI
. Sur fedora le grub binaire ça s'appelle grub2
et pour générer une configuration personnalisée sur une configuration UEFI, l'installation du Grub2-EFI-modules
un paquet est également nécessaire. Sur certaines autres distributions, le nom du binaire c'est juste «grub»:
# Installation de Legacy Grub2 Sudo Grub2-Install \ --Target = i386-pc \ --recheck \ --boot-directory = "/ media / data / boot" / dev / sdb # Installation de Grub pour EFI sudo grub2-install \ - -Target = x86_64-efi \ --recheck \ - -movable \ --efi-directory = "/ media / efi" \ --boot-directory = "/ media / data / boot"
Comme vous pouvez l'observer, dans les deux cas, nous avons utilisé / média / data / démarrage
Comme le directory de démarrage de Grub. Ce répertoire sera automatiquement créé lorsque les commandes ci-dessus seront lancées, et il hébergera les fichiers de configuration de GRUB.
Copiez les images et créez la bouffe.Fichier CFG
Pour créer ou mettre à jour une configuration de grub sur un système Linux moderne, nous exécutons généralement le grub2-mkconfig
commande, ou, dans les distributions basées sur Debian, le mine de mise à jour
wrapper-script. Ces outils effectuent automatiquement les opérations nécessaires.
Dans notre cas, cependant, nous devons nous salir les mains et créer la configuration manuellement. Toutes les distributions ne nécessitent pas les mêmes directives, mais ici verra quelques exemples courants. Nous devons d'abord créer le répertoire qui hébergera les images de nos distributions:
$ sudo mkdir / media / data / boot / iso
Éventuellement, nous voulons peut-être prendre possession de ce répertoire, pour pouvoir y déplacer des images plus facilement. En supposant un identifiant
et gid
de 1000, nous courions:
$ Sudo Chown 1000: 1000 / Media / Data / Boot / ISO
Maintenant, supposons que nous voulons inclure la dernière image Fedora Netinstall dans notre configuration. Nous devons d'abord télécharger l'image dans le / Média / Data / ISO
annuaire:
$ wget -o / média / data / boot / iso / fedoraworkstation-netinst-x86_64-28-1.1.ISO \ https: // Télécharger.fedoraproject.org / pub / fedora / linux / releases / 28 / workstation / x86_64 / iso / fedoraworkstation-netinst-x86_64-28-1.1.ISO
Ensuite, une fois le téléchargement terminé, nous devons ajouter une entrée pour cela dans le ver.CFG
fichier dans le / Media / Data / Boot / Grub2
annuaire. Puisqu'il s'agit de la première entrée, nous ajoutons le fichier lui-même doit être créé:
MenuEntry "Fedora-workStation-netinst-x86_64-28-1.1 "isofile =" / boot / iso / fedoraworkstation-netinst-x86_64-28-1.1.ISO "LOOPBACK LOOP" $ isofile "Linux (LOOP) / ISOLINUX / VMLINUZ ISO-SCAN / FILENAME =" $ isofile "Inst.Stage2 = HD: Label = Fedora-Ws-DVD-X86_64-28 Quiet Initrd (LOOP) / ISOLINUX / INITRD.IMG
La structure d'entrée c'est assez simple: nous avons défini le isofile
variable, avec le chemin vers notre image comme valeur. Grub est capable de démarrer à partir d'un ISO Direty, et c'est ce que le boucler
La commande est pour: dans l'exemple ci-dessus, l'image du système de fichiers sera montée et mise à disposition sur le boucle
appareil.
La ligne commençant par linux
contient le chemin de vmlinuz
, qui est l'exécutable du noyau, ainsi que d'autres directives de démarrage. Parmi eux vous pouvez remarquer ISO-SCAN / Nom de fichier
qui est nécessaire pour trouver l'image ISO sur le disque en utilisant le chemin spécifié.
Enfin, la ligne commençant par initrd
Spécifie le chemin vers l'IniTrd. Tous ces chemins sont, évidemment, par rapport au dispositif de boucle, c'est pourquoi ils sont préfixés par le (boucle)
notation.
Comment connaissons-nous les directives que nous devrions utiliser dans un cas spécifique? Une façon consiste à monter l'image quelque part dans notre système et à jeter un œil aux fichiers placés dans le répertoire IsoLinux. Cependant, la configuration pré-écrite existe déjà et est facile à trouver en ligne.
Un autre exemple, maintenant: nous allons ajouter la dernière image de version Ubuntu à notre périphérique de démarrage:
$ wget http: //.ubuntu.com / 18.10 / Ubuntu-18.10-desktop-amd64.ISO?_ga = 2.232120863.1006005768.1540658570-734439277.1540658570 \ -o / média / data / boot / iso / ubuntu-18.10-desktop-amd64.ISO
Maintenant, nous ajoutons l'entrée au fichier de configuration:
MenuEntry "Ubuntu 18.10 - Essayez sans installer "isofile =" / boot / iso / ubuntu-18.10-desktop-amd64.ISO "LOOPBACK LOOP" $ ISOFILE "Linux (LOOP) / CASPER / VMLINUZ ISO-SCAN / FILENAME =" $ ISOFILE "BOOT = CASPER SIAUX SPLASH --- INITRD (LOOP) / CASPER / INITRD
Voici à quoi devrait ressembler notre menu multiboot à ce stade:
Menu de grub multibootRéflexions de clôture
Dans ce tutoriel, nous avons vu comment créer un appareil multiboot-USB contenant de nombreuses images de distribution. Après cette configuration, nous serons en mesure de démarrer les deux sur le firmware UEFI, en choisissant l'image à lancer à partir du menu Grub.
Le
ver.La configuration CFG présentée ici est absolument minime et peut être personnalisée pour inclure de nombreux autres modules et ajuster d'autres paramètres comme le délai d'expiration de Grub: consulter la documentation officielle de Grub est le moyen idéal pour commencer à explorer les nombreuses possibilités.
Tutoriels Linux connexes:
- Créer USB Bootable Manjaro Linux
- Introduction à Grub Rescue
- Comment créer USB MS Windows de démarrage sous Linux
- Comment créer un USB multiboot avec Ventoy
- Ubuntu 22.04 Ne pas démarrer: Guide de dépannage
- Créer un ubuntu bootable 22.04 Disque de démarrage USB
- Comment faire un USB amorçable à partir d'une ISO dans Linux
- Choses à installer sur Ubuntu 20.04
- Ubuntu 22.04 Sauvegarde et restauration du système
- Créer un Ubuntu 20 bootable.04 Stick USB sur MS Windows 10