
Ich möchte einen persistenten Dualboot-USB-Stick erstellen. Ich möchte versuchen, einen USB-Stick zu erstellen, auf dem ich macOS High Sierra und Windows 10 booten kann. Soweit ich LVM verstehe, kann ich 2 VGs, 1 APFS und 1 NTFS erstellen. Dadurch könnte ich auf einem PC Windows 10 und auf einem Mac Windows 10/macOS booten. Ich weiß, dass man als Workaround 2 USBs oder Bootcamp verwenden muss, aber ich würde es gerne ausprobieren. rEFInd könnte mir die Optionen bieten, die ich brauche, mit einzelnen /boot-Dateien in ihrer eigenen VG.
Anstatt die GUI zu verwenden, nutze ich diese Gelegenheit, um die Grundlagen zu lernen. Dies sind die Schritte, die ich unternommen habe.
Schritt 1: Ich habe meinen USB-Stick gelöscht mit
sudo dd if=/dev/zero of=/dev/sdb bs=4k && sync
Schritt 2: GPT hinzufügen.
sudo gdisk /dev/sdb
o # Create new empty GPT
Schritt 3: EFI-Partition erstellen
n # new partition
1 # 1st partition
<enter> # suggested/default start sector
+512M # Internet wisdom on EFI size
ef00 # EFI system
Schritt 4: LVM-Partition erstellen
n # new partition
4 # 2nd partition
+128M # Internet wisdom on good practice
-128M # Internet wisdom to create buffer space
8e00 # LVM file system
Drucken des Endergebnisses:
Disk /dev/sdd: 242614272 sectors, 115.7 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): FE8B1928-7122-4004-9CF6-D5D47C08999E
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 242614238
Partitions will be aligned on 2048-sector boundaries
Total free space is 526302 sectors (257.0 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 1050623 512.0 MiB EF00 EFI System
2 1312768 242352094 114.9 GiB 8E00 Linux LVM
Hier bin ich verloren. Ich weiß nicht, wie man Bootloader in die EFI-Partition installiert. Ich habe Rod SmithsVerwalten von EFI-Bootloadern für Linux: EFI-Bootloader-InstallationUndDer rEFInd Boot Manager: rEFInd installierenaber bei diesem Teil habe ich den Faden verloren /boot/efi
. Meine Ubuntu-Maschine verwendet nicht /boot/efi, sondern /boot/grub.
Kann jemand konkrete Schritte zum Erreichen von rEFInd auf einem externen USB-Stick empfehlen?
Antwort1
Eine EFI-Systempartition ist einfach eine FAT32-formatierte Partition (mit dem ESP-Bootflag auf GPT-Partitionstabellen). Einige UEFI-Systeme laden problemlos Bootloader von einer FAT32-Partition auf einer Standard-MBR-Partition. Für mich sieht es so aus, als hätten Sie sie richtig erstellt, aber es fehlt die Formatierung. Nach der Formatierung „installieren“ Sie rEFInd dort, indem Sie die rEFInd-Dateien kopieren.
- Format:
mkfs.vfat -F 32 /dev/sdd1
- Montieren:
mkdir /tmp/usbboot && mount /dev/sdd1 /tmp/usbboot
- Zielordner vorbereiten:
mkdir /tmp/usbboot/EFI
- Kopieren Sie
rEFInd
die Dateien:cp -a /path/to/refind /tmp/usbboot/EFI/
(oder verwenden Sie dasrefind-install
Skript:refind-install --root /tmp/usbboot
) - Bearbeiten Sie
rEFInd
die Konfiguration nach Belieben (/tmp/usbboot/EFI/refind/refind.conf
)
Der letzte Schritt zur vollständigen Installation eines Bootloaders auf einem UEFI-System besteht darin, ihn mit efibootmgr
oder ähnlich bei Ihrer UEFI-Firmware zu registrieren. Dies wird bei bootfähigen USB-Laufwerken oft übersprungen; es betrifft nur das aktuelle System. Zum Booten auf anderen Systemen verwenden Sie das Bootmenü der Firmware. (Wenn keine anderen Laufwerke angeschlossen sind und sich keine anderen Bootloader auf dem ESP des USB-Laufwerks befinden, sollte die Firmware rEFInd
es automatisch erkennen und laden.)
Antwort2
Auf einem Wechseldatenträger wäre es am besten, den Bootloader ( refind.efi
) wie folgt zu kopieren/umzubenennen /tmp/usbboot/EFI/boot/bootx64.efi
(unter Verwendung der Pfadnamen wie in den Anweisungen von quixotic). Dies ist ein spezieller Dateiname, nach dem die UEFI-Firmware sucht: Wenn er existiert, wird der Datenträger als UEFI-bootfähig erkannt.
Wenn Sie für Ihren Bootloader einen anderen Pfad oder Dateinamen verwenden, müssen Sie, efibootmgr
wie quixotic sagte, oder Ähnliches verwenden, um den Bootpfad anzugeben. Das ist für permanente Installationen in Ordnung, aber es ist weniger praktisch, wenn Sie ein USB-Gerät haben möchten, das Sie an jedes System anschließen können, um Ihr eigenes Betriebssystem zu booten.
Es sieht jedoch so aus, als ob Sie Linux LVM auf Ihrem USB-Gerät verwenden möchten - das wird bei Ihnen wahrscheinlich nicht funktionieren. Weder Windows noch macOS verstehen Linux LVM ohne zusätzliche Software (oder überhaupt) und akzeptieren es definitiv nicht als Speicherort für ihre Systempartition.
Sie benötigen hier kein Linux LVM: Es würde Ihre Pläne nur erheblich erschweren. Erstellen Sie einfach eine NTFS-Partition und eine APFS-Partition mithilfe der GPT-Partitionstabelle.