Wo ist GRUB installiert?

Autor

Mittwoch, 09. Juni 2010 20:15:46

Hallo,

nachdem mein Rechner in letzter Zeit Zicken macht, wollte ich mir als Notsystem das aktuelle Ubuntu auf eine (bootbare) SD-Karte installieren. Hat im Großen und Ganzen auch geklappt, nur mit dem Bootloader hat das nicht so ganz hingehauen...

Was ich machen wollte:
a) Auf der SD-Karte eine ext4-Partition erstellen und darauf Ubuntu installieren
b) Die SD-Karte bootbar machen, so dass sie das auf ihr installierte Ubuntu bootet
c) Die eingebaute Festplatte (bzw. SSD) unangetastet lassen

Die Bootauswahl sollte par BIOS erfolgen, und die interne SSD als auch die SD-Karte "für sich" lauffähig sein, ohne auf den anderen Datenträger angewiesen zu sein.

a) hat geklappt, b) und c) leider nicht happy
Der Rechner bootet nur über die eingebaute Platte, die SD ist nicht bootfähig.
Ohne SD-Karte bootet der Rechner aber auch nicht! (Irgendwas mit "Medium not found" und 'ner ellenlangen Nummer.)

Meine Vermutung:
Die neue Ubuntu-Installation hat den MBR der internen SSD überschrieben und auf die SD-Karte umgebogen.

Meine Fragen:
- Wie bekommt man eigentlich raus, wohin der Rechner bootet, wenn mehrere grub-Instanzen auf mehreren Partitionen existieren?

- Wie biege ich den MBR der internen SSD wieder so zurück, wie's vorher war?
- Wie mache ich die SD-Karte bootbar, so dass sie das neue Ubuntu bootet?

Verschiedene Versuche meinerseits schlugen bereits fehl, teilweise erschwert durch einen grub/grub2-Mix auf den verfügbaren Linuxen sowie Kommando-Differenzen zwischen den Versionen von Grub sad

Der "alte" Grub war auf sda2 [ext3] in /boot/grub; das konnte ich an den Einträgen in grub.cfg schon nachvollziehen.

Der Rechner als auch die Karte sind in der Lage, von SD zu booten, ich hatte früher schon mal ein bootbares System auf der SD-Karte. Es geht also nur um das "wie".

Grub2 scheint noch zu neu zu sein, als dass ich ein Äquivalent zu "root (hd0,2); setup" gefunden hätte.

Danke für Hinweise!

Ugglan

Ugglan

4 Antworten


Antworten
Re: Wo ist GRUB installiert?
Philipp Klaus, Freitag, 11. Juni 2010 16:26:58
Ein/Ausklappen

GRUB ist mit einem kleinen Teil im MBR installiert, wo Verweise auf die weiteren Dateien im Filesystem liegen (normalerweise unter /boot/grub/).

Zu Deinen Fragen:
1. Der Rechner bootet immer den MBR jenes Volumes (Platte oder SD-Karte), welches als erstes in der Boot-Reihenfolge des BIOS eingetragen ist. Wird dort nichts gefunden, wird das nächste Volume in der Liste probiert. Partitionen sind übrigens nicht gleich Volumes, den MBR (der erste Sektor nach der Partitionstabelle) gibt's Volume nur einmal, die Partitionen können dann noch Boot-Records haben, die jedoch nur aktiv werden, wenn der MBR sie ansteuert.

2. Wenn es sich um verschiedene Versionen von GRUB handelt, am besten, indem Du GRUB in der gewünschten Version nochmals installierst. In vielen Fällen genügt ein grub-install, manchmal musst Du manuell nachhelfen (grub starten und dann dort "install", "help install" gibt Auskunft).

3. Siehe 2. ;-) Du musst also auch dort einen Grub in den MBR schreiben, welcher dann natürlich nur auf dieses Volume verweisen darf, also die HD nicht benötigen darf

Viel Erfolg!


Bewertung: 146 Punkte bei 8 Stimmen.
Den Beitrag bewerten: Gut / Schlecht
-
Re: Wo ist GRUB installiert?
Ugglan , Mittwoch, 16. Juni 2010 11:47:17
Ein/Ausklappen

Ich habe die SD-Karte bootbar bekommen. Ein simples

sudo grub-setup /dev/sdb

schreibt den Bootsektor in den MBR der Festplatte "sowie in die verborgenen Sektoren direkt im Anschluss an den MBR".

/dev/sdb ist bei mir die SD-Karte, leicht erkennbar daran, dass sie, im Gegensatz zur internen SSD, nur zwei Partitionen hat:

ls -1a /dev/sd*
sda
sda1
sda2
sda3
sda4
sdb
sdb1
sdb2

Die "verborgenen Sektoren im Anschluss an den MBR" haben mich aber doch stutzig gemacht. Der Hinweis auf die zusätzlichen Sektoren könnte der Grund dafür sein, warum ein Zurückspielen des Bootsektor-"Backups" mit

dd if=/media/USBSTICK/BACKUP/bootsektor of=/dev/sda bs=512 count=1

auf die SSD nicht funktioniert hat. Offenbar belegt der Bootsektor im Jahre 2010 mehr als 512 Bytes, so dass diese einfache Methode nicht mehr funktioniert. Aber das ist eine andere Baustelle, um die ich mich kümmern muss, bevor mir die nächste Installation wieder den Bootloader zerschießt :-)

Die Reparatur des auf der internen SSD installierten Grub ist gerade um einen Schwierigkeitsgrad erhöht worden, da durch ein Update des neuen Ubuntu-Systems die Booteinträge für die SSD verschwunden sind... manchmal hasse ich selbstkonfigurierende Systeme :-(

Danke für die Hilfe, und ich berichte weiter über Fortschritte...

Ugglan


Bewertung: 143 Punkte bei 8 Stimmen.
Den Beitrag bewerten: Gut / Schlecht
-
Re: Wo ist GRUB installiert?
Joerg Schiermeier, Freitag, 18. Juni 2010 08:03:00
Ein/Ausklappen

Zeig doch mal die Ausgabe von
sudo fdisk -l /dev/sd{a,b}
Dann können wir sehen, wie Deine Partitionen eingerichtet sind. Ferner ist dann sichtbar, welche als 'bootbar' vorgesehen sind, die tragen ein Sternchen.

Ich hab hier GRUB (v1), und da gibt es noch die Datei
/boot/grub/device.map
mit dem Inhalt
(fd0) /dev/fd0
(hd0) /dev/sda
(hd1) /dev/sdb
in der das Mapping der Partitionen zu sehen ist.

Auch ein Lesen der 'info grub' könnte helfen.




Bewertung: 62 Punkte bei 7 Stimmen.
Den Beitrag bewerten: Gut / Schlecht
-
Re: Wo ist GRUB installiert?
Joerg Schiermeier, Freitag, 18. Juni 2010 08:05:21
Ein/Ausklappen

Aargh, nicht der _Partitionen_:
> in der das Mapping der Partitionen zu sehen ist.
sondern der Geräte.



Bewertung: 108 Punkte bei 5 Stimmen.
Den Beitrag bewerten: Gut / Schlecht

Related content

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...
Öhm - wozu Benutzername, wenn man dann hier mit Klarnamen angezeigt wird?
Thomas Kallay, 03.07.2014 20:30, 1 Antworten
Hallo Team von Linux-Community, kleine Zwischenfrage: warum muß man beim Registrieren einen Us...
openSUSE 13.1 - Login-Problem wg. Fehler im Intel-Grafiktreiber?
Thomas Kallay, 03.07.2014 20:26, 8 Antworten
Hallo Linux-Community, habe hier ein sogenanntes Hybrid-Notebook laufen, mit einer Intel-HD460...
Fernwartung für Linux?
Alfred Böllmann, 20.06.2014 15:30, 7 Antworten
Hi liebe Linux-Freunde, bin beim klassischen Probleme googeln auf www.expertiger.de gestoßen, ei...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] HL304cn 32bit auf 64bit
Alfred Zahlten, 29.07.2014 00:33
Am 28.07.2014 um 22:13 schrieb Mahmud Al-Ahmed: > On Sun, 27 Jul 2014 19:09:40 +0200 > Alfred Zahlten...
Re: [EasyLinux-Ubuntu] HL304cn 32bit auf 64bit
Alfred Zahlten, 28.07.2014 23:43
Am 28.07.2014 um 19:59 schrieb Thomas Lueck: Hallo Thomas. > Am Montag, den 28.07.2014, 00:55 +0200 schr...
Re: [EasyLinux-Ubuntu] HL304cn 32bit auf 64bit
Mahmud Al-Ahmed, 28.07.2014 22:13
On Sun, 27 Jul 2014 19:09:40 +0200 Alfred Zahlten wrote: Hallo > Zu Mint 17 noch ein Wort, auch wenn e...
Re: [EasyLinux-Ubuntu] Öffnen_alter_RagTime-Dateien
Rainer, 28.07.2014 21:25
Am Mon, 28 Jul 2014 19:42:00 +0200schrieb Richard Kraut : > Am Montag, den 28.07.2014, 14:52 +0200 schri...
Re: [EasyLinux-Ubuntu] HL304cn 32bit auf 64bit (Pausiert)
Frank von Thun, 28.07.2014 20:43
Am Montag, den 28.07.2014, 16:49 +0200 schrieb H.-Stefan Neumeyer: > Am Montag, 28. Juli 2014, 15:43:27 sc...