Wie finde ich heraus, welchen Bootloader ich habe?

21

Ich weiß, dass bei der Installation von Ubuntu standardmäßig Grub installiert ist, aber ich bin mit einem eingebetteten System konfrontiert, auf dem 9.10 Desktop Edition ausgeführt wird. Es folgt der Inhalt der lsb-release-Datei

ubuntu@ubuntu-desktop:/boot$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=9.10
DISTRIB_CODENAME=karmic
DISTRIB_DESCRIPTION="Ubuntu 9.10"

aber dieses System hat keinen Grub-Bootloader und ich möchte herausfinden, welcher verwendet wird. Also irgendwelche Ideen?

binW
quelle
wiki.debian.org/BootLoader listet alle in Debian verfügbaren Bootloader auf, wenn Sie jeden einzelnen prüfen möchten . Welcher Bogen ist das System? Nur einen Kommentar hinterlassen, da dies keine richtige Antwort ist ...
andrewsomething

Antworten:

13

Wenn Sie die /etc/lilo.confDatei haben, verwenden Sie LILO (LInux LOader). Dies bedeutet, wenn Sie lilozum Beispiel eingeben, sollten Sie den Befehlsdialog für den lilo-Booter sehen.

Wenn Sie über das /boot/grub/Verzeichnis verfügen, verwenden Sie GRUB (Grand Unified Boot Loader). Dies bedeutet, dass Sie in der Lage sein sollten, alle Grub-Dateien wie grub-install, grub-reboot ... zu verwenden.

Ubuntu 9.10 war die erste Version, die GRUB2 https://help.ubuntu.com/community/DualBoot/Grub verwendete

AKTUALISIEREN:

Hier ist ein Skript, um im ersten Sektor der Festplatte zu überprüfen, welchen Boot-Manager er verwendet:

Angenommen, Ihre Festplatte befindet sich bei SDA, dann:

sudo dd if=/dev/sda bs=512 count=1 2>/dev/null | strings | grep -Eoi 'grub|lilo|acronis|reboot'

Hier erfahren Sie, welchen Bootloader Sie verwenden.

Sie können sich den Rest vorstellen ...
Die Liste der Bootloader finden Sie hier: http://en.wikipedia.org/wiki/Comparison_of_boot_loaders und http://wiki.debian.org/BootLoader (für Debian-basierte Distributionen)
Auch wenn Sie Möchten Sie die echte Binärausgabe SEHEN, dann fügen Sie -a zum grep-Teil hinzu. Beispielsweise:

sudo dd if=/dev/sda bs=512 count=1 2>&1 | grep -a GRUB welches Ihnen die Daten in diesem ersten Block zeigt.

Mit diesen neuen Informationen MÜSSEN Sie nun den verwendeten Boot-Manager finden.

Luis Alvarado
quelle
Nein, ich habe keine von diesen.
BinW
Aktualisiert mit einer kleinen Befehlszeile für Sie.
Luis Alvarado
Versuchen Sie auch, durch usw. zu radeln sda1, sda2falls Sie eine Rettungspartition eingerichtet haben.
opyate
Wie finde ich heraus, ob ich auf VPS bin und dieser Ansatz nicht funktioniert? (Gerät ist / dev / simfs und Befehl erzeugt keine Ausgabe)
Thegeko
@thegeko das ist eine sehr große Frage, weil es von Ihrem Provider abhängt, die Software, die sie verwenden, den Service, den sie anbieten (IaaS, PaaS, MaaS, Cloud, Dedicated, Virtual, etc ..)
Luis Alvarado
3

Verwenden Sie den ddBefehl, um den Bootsektor zu lesen, und verwenden grepSie dann , um Ihren Bootloader zu kennen:

dd if=/dev/hda bs=512 count=1 2>&1 | grep GRUB
dd if=/dev/hda bs=512 count=1 2>&1 | grep LILO
Akash Shende
quelle
1

Sie können dies sicherer überprüfen, indem Sie die Version von den Tools selbst abfragen (als wenn Sie Low-Level-DD oder andere Artefakte verwenden).

Zum Beispiel auf lilo testen:

root# lilo -V
bash: lilo: command not found

root# grub-install --version
grub-install (GRUB) 2.02~beta2-22

Dies funktioniert natürlich nicht, wenn Sie beide installiert haben. Wenn dies der Fall ist, deinstallieren Sie diejenigen, die Sie nicht benötigen, um Verwirrung zu vermeiden.

Dr. Beco
quelle