Zum Inhalt springen
Diese Seite ist veraltet. Bitte beachten Sie die neueste Dokumentation unter /configuration/boot_manager_configuration/

Bootmanager-Konfiguration

systemd-boot hat zwei Arten von Konfigurationsdateien: eine für systemd-boot selbst in /boot/loader/loader.conf und eine für jeden einzelnen Kernel-Eintrag in /boot/loader/entry.

In dieser Konfigurationsdatei kannst du den Standardeintrag und das Zeitlimit von systemd-boot ändern.

/boot/loader/loader.conf
default @saved
timeout 5
#console-mode keep # Diese Option konfiguriert die Auflösung der Konsole.

Wir stellen ein Tool zur einfacheren Konfiguration von systemd-boot zur Verfügung: sdboot-manage. Einer der Vorteile dieses Tools ist die globale Konfiguration der Kernel-Befehlszeile. Die Konfigurationsdatei für sdboot-manage befindet sich in /etc/sdboot-manage.conf.

Bearbeite die Zeile LINUX_OPTIONS= in /etc/sdboot-manage.conf, um die Kernel-Parameter zu ändern.

/etc/sdboot-manage.conf
LINUX_OPTIONS="zswap.enabled=0 nowatchdog quiet splash"

Nachdem du Änderungen vorgenommen hast, generiere alle systemd-boot-Einträge mit dem folgenden Befehl neu:

Terminal-Fenster
sudo sdboot-manage gen

Wie systemd-boot hat rEFInd zwei Konfigurationsdateien. refind.conf im Verzeichnis boot/efi/EFI/refind ist hauptsächlich dafür da, das Verhalten von rEFInd zu ändern, während /boot/refind_linux.conf zur Verwaltung deiner Boot-Optionen dient. refind.conf enthält ausführliche Kommentare, die alle Optionen erklären.

Um Kernel-Parameter an die Befehlszeile zu übergeben, ändere “Boot using default options” in /boot/refind_linux.conf

/boot/refind_linux.conf
"Boot using default options" "root=PARTUUID=1cb353ec-7f03-4820-8b4b-03baf53a208f rw zswap.enabled=0 nowatchdog quiet splash"

Änderungen an beiden Konfigurationsdateien werden sofort wirksam. Es ist nicht nötig, einen Befehl zum “Speichern” der Änderungen auszuführen.

Im Gegensatz zu systemd-boot und rEFInd hat GRUB nur eine Konfigurationsdatei, die sich in /etc/default/grub befindet. In dieser Datei gibt es eine ziemlich gute Dokumentation, die erklärt, was jede Option bewirkt.

Um das GRUB-Menü auszublenden, setze einfach die folgenden Optionen entsprechend.

/etc/default/grub
GRUB_TIMEOUT='0'
GRUB_TIMEOUT_STYLE=hidden

Drücke ESC, um zur GRUB-Eingabeaufforderung zu gelangen. Von hier aus führe normal oder exit aus, um zum gewohnten GRUB-Bootmenü zurückzukehren.

Um Kernel-Parameter mit GRUB an die Befehlszeile zu übergeben, müssen wir GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub bearbeiten.

/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog zswap.enabled=0 quiet splash'

Jedes Mal, wenn wir die GRUB-Konfigurationsdatei ändern, müssen wir die Konfiguration mit dem folgenden Befehl neu erstellen:

Terminal-Fenster
sudo grub-mkconfig -o /boot/grub/grub.cfg

Um die Funktion zu aktivieren, installiere das Paket grub-btrfs-support:

Terminal-Fenster
sudo pacman -S grub-btrfs-support

Dieses Paket installiert die notwendigen Skripte und Hooks, um BTRFS-Snapshots automatisch zu erkennen und sie dem GRUB-Menü hinzuzufügen.

Nach der Installation werden deine Snapshots im GRUB-Menü erscheinen, ähnlich dem Verhalten von Limine.

Limine ist ein moderner Bootloader, der für seine einfache Konfiguration bekannt ist. Diese Anleitung behandelt die Grundlagen, um dir den Einstieg zu erleichtern.

Die Konfiguration findet hauptsächlich in /boot/limine.conf (oder manchmal in der EFI-Systempartition) für Menüeinstellungen und in /etc/default/limine für Kernel-Parameter statt.

Diese Datei steuert das Verhalten und das Aussehen des Bootmenüs. Änderungen hier werden sofort nach dem Speichern wirksam – es sind keine zusätzlichen Befehle nötig.

  • Timeout: Legt fest, wie viele Sekunden Limine wartet, bevor der Standardeintrag automatisch gebootet wird.

    /boot/limine.conf
    timeout: 5
  • Default Entry: Gibt an, welcher Menüeintrag standardmäßig gebootet wird. Die Einträge werden ab 1 nummeriert. Wenn nicht gesetzt, ist der Standardwert 1.

    /boot/limine.conf
    default_entry: 2 # Boote standardmäßig den zweiten Eintrag

Beispiel (/boot/limine.conf):

/boot/limine.conf
timeout: 5
default_entry: 2 # Zeigt direkt auf den 'linux-cachyos'-Eintrag unten
/+CachyOS # Eintrag 1: Ein Verzeichnis (benutze /+ zum standardmäßigen Aufklappen)
//linux-cachyos # Eintrag 2: Der eigentliche bootfähige Eintrag
protocol: linux
kernel_path: boot():/vmlinuz-linux-cachyos
cmdline: quiet splash root=UUID=... rw # Grundlegende Kernel-Parameter
module_path: boot():/initramfs-linux-cachyos.img

Du kannst das visuelle Erscheinungsbild des Limine-Bootmenüs anpassen:

  • Wallpaper: Lege ein Hintergrundbild fest. Unterstützte Formate sind BMP, PNG und JPEG.

    /boot/limine.conf
    wallpaper: boot():/splash.png
    wallpaper_style: stretched # Optionen: 'stretched', 'tiled', 'centered'
    backdrop: 000000 # Hintergrundfarbe (RRGGBB hex) bei Style 'centered'
  • Schriftarten: Verwende eine benutzerdefinierte Schriftartdatei und passe deren Größe an.

    /boot/limine.conf
    term_font: boot():/custom_font.F16
    term_font_scale: 2x2 # Skaliert die Schriftgröße, nützlich für hochauflösende Displays
  • Farben: Ändere die Text- und Hintergrundfarben des Terminals.

    /boot/limine.conf
    term_background: 80000000 # Beispiel: Halbtransparentes Schwarz (AARRGGBB)
    # Andere Farboptionen wie term_foreground, etc., sind verfügbar.

Auf CachyOS werden die Kernel-Einträge im Limine-Bootmenü automatisch verwaltet. Wenn du Kernel installierst oder entfernst, verwendet der limine-mkinitcpio-hook im Hintergrund das limine-entry-tool-Hilfsprogramm, um die Boot-Einträge zu aktualisieren.

Obwohl die Einträge automatisch verwaltet werden, kannst du die Kernel-Parameter (auch Kernel-Befehlszeile genannt) konfigurieren, die beim Start an den Kernel übergeben werden.

  1. Konfigurationsdatei bearbeiten: Ändere die KERNEL_CMDLINE-Variablen in /etc/default/limine. Du kannst Standardparameter für alle Kernel oder spezifische Parameter für bestimmte Kernel-Namen (z. B. linux-cachyos) festlegen.

    /etc/default/limine
    # Standardparameter für die meisten Kernel
    KERNEL_CMDLINE[default]="quiet splash rd.udev.log_priority=3"
    # Spezifische Parameter für den 'linux-cachyos'-Kernel
    KERNEL_CMDLINE["linux-cachyos"]="quiet splash mitigations=off"
    # Parameter für Fallback-Einträge (falls generiert)
    # KERNEL_CMDLINE[fallback]="..."
  2. Änderungen anwenden: Nach dem Speichern von /etc/default/limine musst du deine initramfs-Images neu generieren und die Limine-Einträge aktualisieren, um die neuen Kernel-Parameter zu übernehmen. Führe den folgenden Befehl aus:

    Terminal-Fenster
    sudo limine-mkinitcpio

    Dieser Befehl löst den mkinitcpio-Prozess aus, der den limine-mkinitcpio-hook enthält. Dadurch wird sichergestellt, dass deine Änderungen in /etc/default/limine in die Boot-Einträge unter /boot/limine.conf übernommen werden.