GRUB

Aus Mediawiki Ferdinand Gruber
Zur Navigation springen Zur Suche springen

GRUB = Grand Unified Bootloader

Grub2 Konfiguration

Details: Siehe Suse Dokumentation: http://doc.opensuse.org/documentation/html/openSUSE/opensuse-reference/grub2.html

  • Konfiguration
/etc/default/grub
  • Grafikauflösung des Startbildschirms ändern
# /etc/default/grub
GRUB_GFXMODE=1280x1024
  • Grafik deaktivieren
GRUB_TERMINAL=console
  • Benutzerdefinierter Eintrag - Puppy Linux

Folgende Datei bearbeiten:

/etc/grub.d/40_custom

An das Ende der Datei z.B. folgende Einträge hinzufügen

menuentry "Puppy Linux (frugal on sda3)" {
set root=(hd1,3)

linux /puppy/vmlinuz pmedia=atahd psubdir=puppy
initrd /puppy/initrd.gz
}

Achtung: Änderung der Partitionsbezeichnungen in grub2 gegenüber grub legacy:

Die Zählung der Festplatten beginnt bei 0
Die Zählung der Partitionen beginnt bei 1

Festplatte /dev/sda6 entspricht also (hd0,6).

  • Konfiguration speichern

Änderungen an den grub2-Skripten oder an /etc/default/grub werden erst wirksam nach dem Aufruf des folgenden Kommandos:

grub2-mkconfig -o /boot/grub2/grub.cfg

Bootmanager reparieren

Mit einer Live CD starten (Knoppic, SUSE Rescue System von DVD, ...).

Schritt für Schritt

  • Partition mounten
# Beispiel:
mount /dev/sda2 /mnt/
  • Einige Verzeichnisse des laufenden Systems in das gemountete einbinden
mount --bind /dev /mnt/dev/
mount --bind /proc /mnt/proc/
mount --bind /sys /mnt/sys/

oder

for d in dev proc sys ; do mount --bind /$d /mnt/$d ; done
  • In das gemountete System wechseln
cd /mnt/
chroot /mnt/

Befehlsfolge

partition=sda1
read -e -i "$partition" -p "Name der Partition: " partition
mkdir -p /media/$partition
mount /dev/$partition /media/$partition
for d in dev proc sys ; do mount --bind /$d /media/$partition/$d ; done
cd /media/$partition
chroot /media/$partition

GRUB legacy

Grub Konsole starten

grub

Die Partition angeben, wo sich /boot befindet.

grub> root (hd0,2)

Bootloader installieren

grub> setup (hd0)
grub> quit

Grub 2

  • Suse Linux
grub2-mkconfig -o /boot/grub2/grub.cfg
grub2-install /dev/sdb
  • Ubuntu
sudo grub-mkconfig 
sudo update-grub
sudo grub-install /dev/sda

Sonstiges

Erzeugen der Konfiguration dauert sehr lang

Lösung: Folgende Zeile in der angegebenen Datei löschen

# /boot/grub2/device.map
(fd0) /dev/fd0

Operating system not found

Nach einem Festplattenwechsel kann es vorkommen, dass diese Meldung erscheint. Dann eventuell folgender Datei ändern:

/etc/default/grub_installdevice

Pfad zur Festplatte eintragen

# Beispiel
/dev/disk/by-id/scsi-SATA_Samsung_SSD_840S14CNEACC11055Z-part1

Wenn dieser Pfad falsch gesetzt ist, führt der Versuch, den Bootloader mit YAST zu konfigurieren zu einer Fehlermeldung:

Unknown udev device ...

Den Pfad zur richtigen Festplatte ermitteln mit

blkid

Plymouth Bootscreen

Initramdisk neu erstellen, falls der Splash Screen nicht wie erwartet angezeigt wird.

mkinitrd

nVidia Driver zeigt keinen Bootscreen an

Bei Verwendung des proprietären nVidia Kernel Moduls wird bei openSuse Leap der Bootscreen nicht automatisch angezeigt..

Folgende Maßnahmen bewirken, dass der openSuse Leap Bootscreen erscheint:
# /etc/modprobe.d/nvidia.conf
options nvidia_drm modeset=1
# /etc/dracut.conf.d/60-nvidia-default.conf
add_drivers+="nvidia nvidia_modeset nvidia_uvm nvidia_drm"
install_items+="/etc/modprobe.d/nvidia.conf"
dracut -f

Info: https://blog.sukimashita.com/2016/05/02/graphical-boot-plymouth-opensuse-nvidia-driver/

Möglicherweise beeinträchtigen diese Maßnahmen die Performance des Computers. -- ???

Script
# /usr/local/bin/plymouth.sh
cd /etc/dracut.conf.d
cp -f 60-nvidia-default.conf.plymouth 60-nvidia-default.conf
dracut -f

Das Script muss als root ausgeführt werden.

sudo /usr/local/bin/plymouth.sh