Bootoptionen oder Bootparameter können bei Debian direkt manuell eingegeben werden. Falls der aktuelle Kernel beim Booten stehen bleibt, können wir versuchen, mit verschiedenen Bootoptionen dies zu verhindern. Hier ein Beispiel mittels acpi=off:
Um die Einstellungen permanent zu übernehmen, editiere die Datei grub:
# nano /etc/default/grub
die Zeile dazu lautet: GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi=off"
error: no such partition. Entering rescue mode...
grub rescue>
Falls Du diese Meldung auf Deinem Debiansystem bekommst, hast Du den Grub-Bootloader zerschossen. Jetzt wird es an der Zeit, die Installations-CD oder den USB-Stick von Debian einzusetzten. Lege die CD oder den USB-Stick ein, boote ab diesem Medium und wähle dann im Installationsmenu:
Advanced option > Rescue mode
Du solltest Dein System kennen, bevor Du dich an die Reparatur von GRUB wagst. Der Rettungsmodus wird Dir ganz oben links angezeigt!
Sprache, Land und Ort wählen
Netzwerk (Kabel, WLAN) wählen.
Rechnername wählen (spielt keine Rolle, was hier gewählt wird)
Domain-Name wählen (leer lassen)
root-Dateisystem wählen! (In diesem Beispiel liegt root auf /dev/sdb2)
01. Das Wählen des richtigen Root-Dateisystems ist relevant! Falls Du das falsche Root-Dateisystem wählst, führt dies unweigerlich zu einer Fehlermeldung!
02. falls der Mountpunkt /boot auf / liegt, ist das Einbinden von /boot sparat nicht nötig und diese Meldung wird nicht angezeigt. Liegt /boot jedoch auf einer separaten Partition, bindet der Rettungsmodus die Partition ein. /boot ist jedoch nicht mit dem Mountpoint /boot/efi zu verwechseln! /boot/efi wird auf /boot erst später eingehängt.
03. Wähle mit den Pfeiltasten nun auf Eine Shell in /dev/sdXY ausführen
04. GRUB neu installieren
Alternative I
Es kann natürlich auch «Den GRUB-Bootloader neu installieren» gewählt werden. Bei Linux führen manchmal verschiedene Wege zum Ziel und es kann mehrere Lösungen geben.
Alternative II – (EFI-System)
Wir befinden uns nun in der Shell der Rettungsaktion. Installieren nun das Paket grub-efi
# apt install grub-efi
und binde die EFI-Bootpartition ein.
# mount /dev/sdb2 /boot/efi
Installiere jetzt den Bootloader in das Wurzelverzeichnis. Bevor der Bootloader neu geschrieben wird, kann mit lsblk überprüft werden, ob alle Partitionen korrekt eingehängt sind:
$ lsblk
05. Installiere den Bootloader in das Wurzelverzeichnis: Der Bootloader wird nicht auf die einzelne Partition geschrieben. Liegt Dein root-System zum Beispiel auf /dev/sdb2, wird der Bootloader nicht auf die Partition, sondern auf die Platte geschrieben. Hier wäre dies also /dev/sdb
/dev/sdb2 ≠ /dev/sdb
# grub-install /dev/sdb
führe ein update-grub aus. Dies ist zwar nicht unbedingt nötig, gibt uns aber ein aussagekräftiges Feedback, ob alles geklappt hat.
# update-grub
GRUB-Konfigurationsdatei wird erstellt …
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Linux-Abbild gefunden: /boot/vmlinuz-4.19.0-9-amd64initrd-Abbild gefunden: /boot/initrd.img-4.19.0-9-amd64Windows Boot Manager auf /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi gefunden
Adding boot menu entry for EFI firmware configuration
erledigt
Verlasse die Shell mit:
# exit
06. und wähle System neu starten aus.
07. Ausgabe lsblk für dieses Beispiel! Auf sda liegt Windows 10 und auf sdb Debian. Die EFI-Boot Partition von Debian ist nicht separat eingebunden, wie unter Punkt 2 beschrieben wird. sda1 und sdb1 sind hier zwei EFI-Boot-Partitionen.
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 100M 0 part /boot/efi
├─sda2 8:2 0 16M 0 part
├─sda3 8:3 0 296.1G 0 part
└─sda4 8:4 0 634.8G 0 part sdb 8:16 0 232.9G 0 disk
├─sdb1 8:17 0 487M 0 part
├─sdb2 8:18 0 68.2G 0 part /
├─sdb3 8:19 0 8G 0 part [SWAP]
└─sdb4 8:20 0 156.3G 0 part /home/yuna/media