Wie kann ich feststellen, welcher Bootloader wo installiert ist?

9

Auf einer Debian Linux-Box stoße ich auf eine sehr seltsame Situation, in der GRUB nach dem Einschalten mit dem Fehler "Keine solche Partition" fehlschlägt. Wenn ich dann aber auf die Schaltfläche "Zurücksetzen" drücke, wird es normal gestartet. Ich versuche, die Situation zu diagnostizieren, und habe festgestellt, dass ich nicht weiß, welche Versionen welcher Bootloader wo installiert sind. Wie kann ich das herausfinden? Das heißt, wie kann ich herausfinden, welcher Bootloader auf dem MBR jeder meiner Festplatten installiert ist, und wie kann ich herausfinden, welche Bootloader der zweiten Stufe auf den verschiedenen Partitionen installiert sind?

Wenn ich nicht genau herausfinden kann, was ich habe, würde ich mich damit zufrieden geben, herauszufinden, welche Version von GRUB wo installiert ist.

Norman Ramsey
quelle
Haben Sie die Taste "Esc" gedrückt (um das Startmenü von Grub anzuzeigen), bevor die Fehlermeldung angezeigt wird?
Sägemehl
@sawdust wir kommen nicht so weit wie ein Menü. Nur "Grub laden; Willkommen bei Grub;" und dann der Fehler. Normalerweise würde ich ein Menü erwarten und dann nach einer Zeitüberschreitung von 10s automatisch starten. Aber so weit komme ich nicht. Daher die Frage: "Wie finde ich heraus, was da ist?" Vielleicht ist es meine Aufgabe, einfach alles neu zu installieren :-(
Norman Ramsey
Verwandte: serverfault.com/questions/61400/…
Ciro Santilli 法轮功 病毒 审查 审查 事件 法轮功

Antworten:

13

Sie können sehen, ob GRUB (1 oder 2) mit dd auf dem MBR installiert ist :

dd if=/dev/sda bs=512 count=1 2> /dev/null | grep -q GRUB && echo "GRUB found"

Wenn die GRUB-Signatur gefunden wurde, können Sie Folgendes ausführen:

file -s /dev/sda

Wenn die Ausgabe so etwas wie:

/ dev / sda: x86-Bootsektor; GRand Unified Bootloader, Stufe 1 Version 0x3 ...........

dann haben Sie GRUB1 auf dem MBR installiert. Wenn Grub nicht erwähnt wird, so:

/ dev / sda: x86-Bootsektor; Partition 1: ID = 0x83, aktiv, Startkopf 32, Startsektor 2048 ........

Dann haben Sie GRUB2 auf dem MBR dieser Festplatte installiert.

So finden Sie die wesentlichen GRUB-Dateien ("Stufen" für GRUB1, "Bilder" für GRUB2):

GRUB1:

Konfigurationsdatei:

find / -name menu.lst

Stufen:

find / -name stage1

oder

find / -name stage2

GRUB2:

Konfigurationsdatei:

find / -name grub.cfg

Bilder:

find / -name core.img

oder

find / -name boot.img
don_crissti
quelle
1
Absolut brilliant. Es scheint file(1)heutzutage alles zu haben.
Norman Ramsey
Mithilfe von konnte file -sich den Windows-Bootloader auf meinem PC finden. Vielen Dank!
Wjandrea
5

Sie können http://bootinfoscript.sourceforge.net verwenden, das Ihnen detaillierte Informationen zu Ihrem Startstatus und Informationen darüber gibt, welcher Bootloader wo installiert ist, kombiniert mit vielen detaillierten anderen Informationen, die für das Booten relevant sind. Es ist in Debian als Paket Boot-Info-Skript verfügbar.

drott
quelle
1
sudo apt install boot-info-scriptund dann sudo bootinfoscript. Der Ausgang ist in RESULTS.txt. Gültig unter Ubuntu 18.04 (5 Jahre später).
Estibordo