dit artikel of deze sectie is een kandidaat voor het verplaatsen naar Multiboot disk images.
een multiboot USB-flashstation maakt het opstarten van meerdere ISO-bestanden vanaf één apparaat mogelijk. De ISO bestanden kunnen worden gekopieerd naar het apparaat en direct opgestart zonder ze eerst uit te pakken. Er zijn meerdere methoden beschikbaar, maar ze werken mogelijk niet voor alle ISO-images.
met behulp van GRUB-en loopback-apparaten
dit artikel of deze sectie heeft taal -, wikisyntaxis-of stijlverbeteringen nodig. Zie Help: stijl voor referentie.
voordelen:
- slechts één partitie vereist
- alle ISO-bestanden worden gevonden in één map
- ISO-bestanden toevoegen en verwijderen is eenvoudig
nadelen:
- niet alle ISO-images zijn compatibel
- het oorspronkelijke opstartmenu voor het ISO-bestand wordt niet getoond
- het kan moeilijk zijn om een werkende opstartingang
voorbereiding
dit artikel of deze sectie heeft uitbreiding nodig.
maak tenminste één partitie en een bestandssysteem dat door GRUB op de USB drive wordt ondersteund. Zie partitionering en bestandssystemen#Maak een bestandssysteem aan. Kies de grootte op basis van de totale grootte van de ISO-bestanden die u wilt opslaan op de schijf, en plan voor extra ruimte voor de bootloader.
GRUB installeren
eenvoudige installatie
koppel het bestandssysteem aan op het USB-station:
# mount /dev/sdXY /mnt
creëer de map /boot:
# mkdir /mnt/boot
GRUB installeren op het USB-station:
# grub-install --target=i386-pc --recheck --boot-directory=/mnt/boot /dev/sdX
in het geval dat je ISO ‘ s in UEFI Mode wilt booten, moet je grub installeren voor het UEFI doel:
# grub-install --target=x86_64-efi --removable --boot-directory=/mnt/boot --efi-directory=/mnt
voor UEFI moet de partitie de eerste zijn in een MBR-partitietabel en geformatteerd met FAT32.
Hybrid UEFI GPT + BIOS GPT/MBR boot
Deze configuratie is handig voor het maken van een universele USB-sleutel, die overal kan worden opgestart.Allereerst moet u een GPT-partitietabel maken op uw apparaat. Je hebt minstens 3 partities nodig:
- een BIOS boot partitie (gdisk type code
EF02
). Deze partitie moet 1 MiB groot zijn - een EFI-systeempartitie (gdisk type code
EF00
met een FAT32-bestandssysteem). Deze partitie kan zo klein zijn als 50 MiB. - uw data partitie (gebruik een bestandssysteem dat ondersteund wordt door GRUB). Deze partitie kan de rest van de ruimte van uw schijf in beslag nemen.
de feitelijke juistheid van dit artikel of deze sectie wordt betwist.
vervolgens moet u een hybride MBR-partitietabel aanmaken, omdat het instellen van de opstartvlag op de beschermende MBR-partitie misschien niet genoeg is.
hybride MBR partitietabel aanmaken voorbeeld gebruikmakend van gdisk:
vergeet niet om de partities te formatteren:
# mkfs.fat -F32 /dev/sdX2# mkfs.ext4 /dev/sdX3
U kunt GRUB Nu installeren om zowel EFI + GPT als BIOS + GPT / MBR te ondersteunen. De GRUB configuratie (–boot-directory) kan op dezelfde plaats bewaard worden.
eerst moet u de EFI-systeempartitie en de gegevenspartitie van uw USB-station aankoppelen.
een voorbeeld hiervan zou als volgt zijn:
# mount /dev/sdX3 /mnt# mkdir -p /mnt/boot/EFI# mount /dev/sdX2 /mnt/boot/EFI
dan kun je GRUB voor UEFI installeren met:
in de meeste gevallen komt EFI_MOUNTPOINT
overeen met de /mnt/boot/EFI
submap op uw aangekoppelde USB-schijf.
# grub-install --target=x86_64-efi --recheck --removable --efi-directory=/EFI_MOUNTPOINT --boot-directory=/DATA_MOUNTPOINT/boot
en voor BIOS met:
# grub-install --target=i386-pc --recheck --boot-directory=/DATA_MOUNTPOINT/boot /dev/sdX
als een extra fallback, kunt u GRUB ook installeren op uw MBR-opstartbare data partitie:
# grub-install --target=i386-pc --recheck --boot-directory=/DATA_MOUNTPOINT/boot /dev/sdX3
GRUB
configureren met behulp van een sjabloon
Er zijn enkele git projecten die een aantal reeds bestaande GRUB configuratie bestanden leveren, en een mooie generieke grub.cfg
die gebruikt kunnen worden om de andere boot entries op aanvraag te laden, die ze alleen laten zien als de opgegeven ISO bestanden-of mappen die ze bevatten – aanwezig zijn op de schijf.
Multiboot USB: https://github.com/aguslr/multibootusb
GLIM (GRUB2 Live ISO Multiboot): https://github.com/thias/glim
handmatige configuratie
voor een multiboot USB-station is het gemakkelijker om grub.cfg
handmatig te bewerken in plaats van het te genereren. U kunt ook de volgende wijzigingen aanbrengen in /etc/grub.d/40_custom
of /mnt/boot/grub/custom.cfg
en /mnt/boot/grub/grub.cfg
genereren met grub-mkconfig.
aangezien het wordt aanbevolen om een permanente naam te gebruiken in plaats van /dev/sdxY
om de partitie te identificeren op het USB-station waar de afbeeldingsbestanden zich bevinden, definieer een variabele voor het gemak om de waarde vast te houden. Als de ISO images op dezelfde partitie staan als GRUB, gebruik dan het volgende om de UUID te lezen tijdens het opstarten:
/mnt/boot/grub / grub.cfg
# pad naar de partitie met ISO images (met behulp van UUID)probe-u $root --set=rootuuidset imgdevpath="/dev/disk/by-uuid/$rootuuid"
of Specificeer de UUID expliciet:
/mnt/boot/grub/grub.cfg
# pad naar de partitie die ISO images bevat (met behulp van UUID)set imgdevpath="/dev/disk/by-uuid/UUID_value"
alternatief, gebruik het apparaatlabel in plaats van UUID:
/mnt/boot/grub/grub.cfg
# pad naar de partitie met ISO images (met labels)set imgdevpath="/dev/disk/by-label/label_value"
de benodigde uuid of label kan gevonden worden met lsblk -f
. Gebruik niet hetzelfde label als de Arch ISO voor het USB-apparaat, anders zal het opstartproces mislukken.
om de configuratie te voltooien, moet een opstartinvoer voor elke ISO image worden toegevoegd onder deze header, zie de volgende sectie voor voorbeelden.
Boot entries
aangenomen wordt dat de ISO images opgeslagen zijn in de boot/iso/
map op hetzelfde bestandssysteem waar GRUB is geïnstalleerd. Anders zou het nodig zijn om het pad naar ISO-bestand met apparaatidentificatie voor te schrijven wanneer het loopback
commando wordt gebruikt, bijvoorbeeld loopback loop (hd1,2)$isofile
. Aangezien deze identificatie van apparaten niet persistent is, wordt deze niet gebruikt in de voorbeelden in deze sectie.
men kan op deze manier gebruik maken van permanente blok apparaat naamgeving. Vervang de UUID volgens uw ISO bestandssysteem uuid.
Arch Linux monthly release
zie ook archiso.
zie README.bootparams voor archiso-opties die worden ondersteund in de opdrachtregel van de kernel.
Memtest86 +
Memtest86+ is opgenomen in de maandelijkse ISO.
archboot
zie ook archboot.
met behulp van Syslinux en memdisk
met behulp van de memdisk module, wordt de ISO image geladen in het geheugen, en de bootloader is geladen. Zorg ervoor dat het systeem dat deze USB-drive opstart voldoende geheugen heeft voor het imagebestand en het draaiende besturingssysteem.
voorbereiding
zorg ervoor dat het USB-station correct is gepartitioneerd en dat er een partitie is met een bestandssysteem dat wordt ondersteund door Syslinux, bijvoorbeeld fat32 of ext4. Installeer dan Syslinux op deze partitie, zie Syslinux#installatie op BIOS.
installeer de memdisk module
De memdisk module is niet geà nstalleerd tijdens de installatie van Syslinux, het moet handmatig geà nstalleerd worden. Koppel de partitie waar Syslinux is geïnstalleerd aan /mnt/
en kopieer de memdisk module naar dezelfde map waar Syslinux is geïnstalleerd:
# cp /usr/lib/syslinux/bios/memdisk /mnt/boot/syslinux/
configuratie
na het kopiëren van de ISO-bestanden op het USB-station, bewerk het Syslinux configuratie bestand en maak menu-items voor de ISO images. De basis regel ziet er als volgt uit:
boot/syslinux/syslinux.cfg
LABEL some_label LINUX memdisk INITRD /path/to/image.iso APPEND iso
zie memdisk op Syslinux wiki voor meer configuratie opties.
Caveat voor 32-bits systemen
wanneer een 32-bits systeem wordt opgestart vanaf een image groter dan 128 MIB, is het noodzakelijk om het maximale geheugengebruik van vmalloc te verhogen. Dit wordt gedaan door vmalloc=valueM
aan de kernelparameters toe te voegen, waarbij value
groter is dan de grootte van de ISO-image in MiB.
bijvoorbeeld bij het opstarten van het 32-bit systeem vanaf de Arch installatie ISO, druk je op de Tab
sleutel over de Boot Arch Linux (i686)
ingang en voeg vmalloc=768M
toe aan het einde. Het overslaan van deze stap zal resulteren in de volgende fout tijdens het opstarten:
modprobe: ERROR: could not insert 'phram': Input/output error
geautomatiseerde tools
- GRUB2 Live ISO Multiboot (GLIM) — een set GRUB configuratie bestanden om een vfat geformatteerde USB memory stick met GNU/Linux distributie ISO images om te zetten in een multiboot USB drive.
https://github.com/thias/glim / / niet verpakt? zoek in AUR
- liveusb-builder – een SCRIPTSUITE om multiboot USB-stick te maken voor GNU/Linux-distributies
https://github.com/mytbk/liveusb-builder || liveusb-builder-gitAUR
- MultiBootUSB — een platformonafhankelijke Python-software met CLI-en GUI-interfaces waarmee u meerdere live Linux-images op een USB-stick kunt installeren en verwijderen.
https://github.com/mbusb/multibootusb || multibootusbAUR
- MultiSystem — een grafisch hulpmiddel dat het mogelijk maakt om meerdere ISO-images op een USB-apparaat te installeren, beheren en verwijderen.
http://liveusb.info/dotclear/ || multisystemAUR
- Ventoy — een open source tool om opstartbare USB-drive te maken voor ISO/WIM/IMG/VHD(x)/EFI-bestanden. U hoeft de schijf niet steeds opnieuw te formatteren, u hoeft alleen de bestanden naar de USB-drive te kopiëren en ze direct op te starten.
https://www.ventoy.net | / ventoy-binAUR