Der Ordner etc/grub.d

Mittwoch 16. Januar 2019 von Torsten

Im Ordner “etc/grub.d“ finden sich die Skripte aus denen die Grub-Konfigurationsdatei “boot/grub/grub.cfg“ aufgebaut wird…

Dieser Artikel betrachtet dabei besonders die Datei “40_custom“ für eigene Menüeinträge.

Die Dateien im Ordner “etc/grub.d“

  • 00_header
  • 05_debian-theme
  • 10_linux
  • 20_linux-xen
  • 20_memtest86+
  • 30_os-prober
  • 30_uefi-firmware
  • 40_custom
  • 41_custom

In der Datei “grub.cfg“ sind die entsprechenden Abschnitte mit einer Begin- und End-Markierung versehen…

Für eigene Menüeinträge kann die Datei “40_custom“ genutzt werden.

Die Datei “40_custom“

Am Anfang der Datei steht bereits folgender Inhalt der auch nicht gelöscht werden sollte:

#!/bin/sh

exec tail -n +3 $0

Um einen eigenen Menüeintrag zu erzeugen, wird folgender Abschnitt in der custom-Datei ergänzt:

menuentry „Betriebssystem 1″{

set root=(hd0,gpt1)

linux /boot/vmlinuz-4.15.0-33-generic root=/dev/sda1 ro quiet splash

initrd /boot/initrd.img-4.15.0-33-generic

}

Als “menuentry“ kann also ein beliebiger Name vergeben werden.

Die öffnende und schließende Klammer sollte nun gleich geschrieben werden – bevor man sie vergisst.

Zwischen den geschweiften Klammern werden drei Zeilen benötigt.

  • set root Zeile
  • linux Zeile
  • initrd Zeile

Die set root-Zeile: Gibt die Partition an, auf der die Bootdateien des im Menü-Eintrag angegebenen Systems liegen.

Je nach Erstellung der Partitionstabelle sind z.B. hd0,msdos1 oder hd0,gpt1 einzusetzen.

Die erste Festplatte wird mit hd0 bezeichnet und die Partitionen ab 1 durchgezählt.

Die linux-Zeile: Diese Zeile gibt die Bezeichnung für den Kernel an, der geladen werden soll und wo sich dieser befindet.

initrd-Zeile: Diese Zeile gibt die Bezeichnung für das Boot-Image an, das geladen werden soll und wo sich dieses befindet.

Der hier angegebene Kernel und das Boot-Image sollten die gleiche Versionsnummer haben.

Innerhalb der linux-Zeile braucht es übrigens keine UUID. Die einzige Anpassung die ich in meiner Datei noch zufügen musste – regelmäßige Leser ahnen es vielleicht – war die eDP- Abschaltung.

Bei mir sieht die linux-Zeile abschließen also so aus:

linux /boot/vmlinuz-4.15.0-33-generic root=/dev/sda1 ro video=eDP-1:d quiet splash

Bis auf diese kleine Abweichung kann der oben beschriebene Abschnitt für eigene Menüeinträge übernommen werden. Mit den Anpassungen für Menüeintrag, Partition, Kernel und Boot-Image sollte ein eigene Menüeintrag auch funktionieren – nach einem “sudo update-grub“!

Die Reihenfolge der Menüeinträge

Um den Menüeintrag nach oben ins Menü zu holen, habe ich eine Kopie der “40_custom-Datei“ erstellt und diese Kopie in “08_custom“ umbenannt.

Wichtig ist dabei wohl, dass diese eigene Datei erst nach der Debian-Theme-Datei kommt und vor der ersten Linux-Datei. Die Nummerierung entspricht auch der Bearbeitungsreihenfolge

Es ist also möglich die “40_custom“ in “06_custom“ umzubenennen und somit die Einträge nach oben ins Menü einzuordnen.

Dieser Beitrag wurde erstellt am Mittwoch 16. Januar 2019 um 08:00 und abgelegt unter Allgemein. Kommentare zu diesen Eintrag im RSS 2.0 Feed. Sie können zum Ende springen und ein Kommentar hinterlassen. Pings sind im Augenblick nicht erlaubt.

Kommentar schreiben