Benutzer:Tuxnix
Nur für eigene Zwecke
Kopie aus AfE:
Installation eines Bootloaders
- Als Bootmanager für BIOS-Boot-Systeme stehen Grub und syslinux zur Verfügung.
- Für UEFI-BOOT-Syteme kann als Bootloader systemd-boot oder EFISTUB oder Grub oder rEFInd eingesetzt werden.
Installation des GRUB Bootloaders
Für Benutzer von intel-ucode bitte folgende Seite zusätzlich beachten: Microcode.
Falls bei einen BIOS-Boot-System von einem Datenträger mit GPT-Partitionstabelle gebootet werden soll, benötigt Grub eine zusätzliche Partition von der Größe von 1MiB und dem Partitionstyp ef02. Siehe Grub.
Installation des Pakets:
pacman -S grub
Booten per BIOS
grub-install /dev/sda
Booten per UEFI
Installation des EFI Bootmanagers (sonst kommt die Fehlermeldung: efibootmgr: not found):
pacman -S efibootmgr grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=<Boot-Name>
Alternativ kann man
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=<Boot-Name> --recheck --debug
verwenden, um zusätzliche Informationen zu bekommen, falls es zu einem Fehler kommt.
Wenn man einen etwas längeren Namen mit Leerzeichen für Grub geben möchte, muss man einfach 2 Anführungszeichen anbringen:
--bootloader-id="Ein sehr langer Name für den Grub Bootloader, der auch so im UEFI angezeigt wird :D"
Weitere Konfiguration nach BIOS oder UEFI grub-install:
Es kann jetzt die Grub Konfiguration generiert werden.
grub-mkconfig -o /boot/grub/grub.cfg
Sollte grub-mkconfig dabei eine Fehlermeldung wie
... error: out of memory. error: syntax error. error: Incorrect command. error: syntax error. Syntax error at line 164 ...
liefern (siehe auch: "FS#38041 - grub 1:2.00.1282.g5ae5c54-1 will not generate grub.cfg file syntax errors", sollte das Anhängen folgender Zeile an /etc/default/grub:
# fix broken grub.cfg gen GRUB_DISABLE_SUBMENU=y
und ein erneuter Aufruf von grub-mkconfig Abhilfe schaffen.
Installation des Syslinux Bootloader
Wenn bereits ein Linux-Bootloader installiert ist, kann dieser Punkt übersprungen werden. Der bereits vorhandene Bootloader muss natürlich entsprechend konfiguriert werden.
Zur Beachtung, der Syslinux Bootloader funktioniert nicht bei allen 64bit Dateisystemen wie z.B. ext4. Es muß dann ein anderer Bootloader gewählt werden wie z.B. Grub. Dieser Fehler macht sich erst nach dem Reboot mit folgender Meldung bemerkbar: Failed to load ldlinux.c32 . Boot failed: Please change disks and press a key to continue.
Syslinux kann jetzt installiert werden.
Bei einer GPT-Partitionstabelle muss das Paket gptfdisk zusätzlich installiert werden.
pacman -S gptfdisk pacman -S syslinux
Mit einem Editor (nano) die Konfigurationsdatei anpassen:
nano /boot/syslinux/syslinux.cfg
Die Zeilen APPEND root=/dev/sda3 ro ändern in
APPEND root=/dev/sda1 rw
oder wenn man die LABEL-Partitionsbezeichnung bevorzugt:
APPEND root=LABEL=p_arch rw
Anschließend syslinux auf den Bootsektor installieren
syslinux-install_update -iam
Manuelle Installation von syslinux
Falls nicht alles reibungslos ablief, kann Syslinux manuell installiert werden.
Dazu wird mit dem Programm fdisk das Bootflag auf die Partition gesetzt, von der die Bootdaten gebootet werden sollen.
Beispiel, um für /dev/sda1 das Bootflag zu setzen:
fdisk /dev/sda x a p r w
Dann wird die Partition der Bootdaten, wie z. B. /dev/sda1, unter /boot gemountet und der Bootloader installiert.
mount /dev/sda1 /boot mkdir /boot/syslinux extlinux --install /boot/syslinux
Jetzt muss noch der MBR von Syslinux auf die Festplatte geschrieben werden.
cat /usr/lib/syslinux/bios/mbr.bin > /dev/sda