• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Grub in erweiterter Partition

Hallo zusammen,

ich habe ein Problem mit meinem Grub.

Und zwar habe ich eine openSuSE 10.3 Installation auf einer primärem Partition inklusive Grub auf derselben... das läuft alles problemlos. Nun habe ich openSuSE 11.3 auf eine logische Partition installiert (Grub in Rootpartition) und diese in die alte Grub Konfiguration mit aufgenommen (über chainloader)...auch das funktioniert.

Nun wollte ich - da die neue Installation eingerichtet ist - Grub in die erweiterte Partition installieren, um die alte primäre Partition wieder "frei" zu kriegen. Das klappt aber irgendwie nicht.

Ich habe es bisher nur über YAST versucht:
Bootloader-Installation -> Speicherort der Bootloaders -> Aus erweiterter Partition starten

Es werden keinerlei Fehler gemeldet, aber ein "dd if=/dev/sda4 count=1|hexdump -C" zeigt mir, dass Grub sich nicht da befindet, wo er doch eigentlich sein sollte... oder mache ich einen Denkfehler?

Ich habe zum Vergleich die Grubinstallation der Rootpartition verglichen... hier wird mir Grub angezeigt.

Hoffe mein Problem ist verständlich ;)

Gruß Alf
 
Was YaST getan hat, sollte in /var/log/YaST2/y2log_bootloader stehen. Ich würde den manuellen Weg gehen (http://www.linux-club.de/viewtopic.php?f=4&t=100589&p=612947#p612947, bei Dir geht es im laufenden System, find liefert bei Dir mehr als ein Ergebnis, aber die gewünschte Systempartition wirst Du wohl erkennen, und wenn sda4 Deine erweiterte Partition ist [ist fdisk -l auch dieser Meinung?], muß es setup (hd0,3) heißen).
 
Hmm... Yast hat dann wohl nichts getan, denn die Logdatei hat ein altes Datum und auch der Inhalt passt zu meiner Erstinstallation und nicht zur aktuellen Einstellung. Die Datei /etc/grub.conf wurde hingegen angepasst. Scheinbar wurde sie nur nicht ausgeführt :???:

Werde es wohl manuell versuchen müssen... ist aber irgendwie komisch... Yast scheint wohl noch einige Macken zu haben :schockiert:
 
So... nun bin ich endlich dazu gekommen es manuell zu versuchen.

Ergebnis... grub ist auf sda4 (erweiterte Partition) eingerichtet... man kann diese jedoch nicht aktivieren... oder mache ich hierbei etwas falsch: makeactive (hd0,3) :???:

Die Hilfe von makeactive sagt auch, dass nur primäre Partitionen aktiv sein dürfen... dann wäre mein ganzer Aufwand ja umsonst gewesen... dann muss ich ja in den MBR gehen :schockiert:

fdisk ist der Meinung: /dev/sda4 19585 60801 331075552+ f W95 Ext'd (LBA) ;)
 
Was meinst Du mit "menu.lst" :???:

Dort habe ich nichts verändert... ich habe grub in der erweiterten Partition installiert und versucht diese mit "grub -> makeactive" zu aktivieren. Die erweiterte Partition kann grub aber scheinbar nicht aktivieren... laut Hilfe:

Code:
grub> help makeactive
makeactive: makeactive
    Set the active partition on the root disk to GRUB's root device.
    This command is limited to _primary_ PC partitions on a hard disk.

Ergänzung:
Das Setzen mit sfdisk hat prima funktioniert... DANKE!
Bin mir zwar mittlerweile nicht mehr ganz sicher, ob meine Lösung wirklich so gut ist, wie ich anfangs dachte, aber jetzt geht es erst einmal :D
 
Hallo Alf72,
Alf72 schrieb:
Und zwar habe ich eine openSuSE 10.3 Installation auf einer primärem Partition inklusive Grub auf derselben... das läuft alles problemlos. Nun habe ich openSuSE 11.3 auf eine logische Partition installiert (Grub in Rootpartition)...........
Nun wollte ich - da die neue Installation eingerichtet ist - Grub in die erweiterte Partition installieren, um die alte primäre Partition wieder "frei" zu kriegen. Das klappt aber irgendwie nicht.
Du hast also zwei lauffähige openSUSE Installationen und möchtest die ältere von beiden löschen um künftig nur noch mit der 11.3 zu arbeiten?
Dann formatiere doch die primäre Partition einfach.
Alf72 schrieb:
aber ein "dd if=/dev/sda4 count=1|hexdump -C" zeigt mir, dass Grub sich nicht da befindet, wo er doch eigentlich sein sollte... oder mache ich einen Denkfehler?
Ja das machst Du, denn du hast ja mit dieser Aktion hier:
Alf72 schrieb:
Ich habe es bisher nur über YAST versucht:
Bootloader-Installation -> Speicherort der Bootloaders -> Aus erweiterter Partition starten
einen zusätzlichen Bootloader in die erweiterte Partition installiert und hast somit zwei unterschiedliche GRUB.
Primär wird natürlich der aus dem MBR genommen weshalb der andere Sinn-befreit herum liegt.
  • 01. Primäre Partition löschen/formatieren
    02. Den GRUB aus dem MBR löschen
    03.GRUB auf der erweiterten Partition überprüfen, ob er richtig eingerichtet ist
und dann sollte es eigentlich gehen.

lieben Gruß aus Hessen
 
Hallo HvH,

ja... ich habe 2 Installationen... bis die "neue" jedoch richtig funktioniert, wollte ich die alte gerne als Backup behalten... daher wollte ich sie nicht gleich löschen ;)

Jetzt würde ich aber trotzdem gerne meinen "Denkfehler" verstehen... also...

Meine "alte" Installation ist auf einer primären Partition (sda3) meine "neue" auf der erweiterten (sda4 bzw. sda6). Mein Zeil war es nun 2 Grub Installationen zu haben... einen auf sda3 - den bisherigen - und den neuen auf sda4.
Warum aber finde ich nach meinen YAST Experimenten keinen Grub in sda4, obwohl ich doch "Aus erweiterter Partition starten" gewählt habe :???: Du schreibst ja auch, dass ich 2 Bootloader haben müsste... genau das war aber leider nicht der Fall.

Im MBR habe ich überhaupt keinen GRUB installiert! Dort schlummert der "generische" Code :D

Nach meinem manuellen Eingriff - expliziter Aufruf von GRUB Setup - habe ich ihn ja auch auf sda4 gefunden... YAST hat dies wohl scheinbar nicht durchgeführt. Nach meinem YAST Aufruf sahen alle Bootsektoren genauso aus wie vorher... daher dachte ich, dass da irgendetwas nicht stimmen kann :irre:

Hoffe das war ein wenig verständlich... vielleicht ist es ja auch ein YAST Problem :???:

Gruß Alf
 
Alf72 schrieb:
ja... ich habe 2 Installationen... bis die "neue" jedoch richtig funktioniert, wollte ich die alte gerne als Backup behalten... daher wollte ich sie nicht gleich löschen ;)
Du hast aber Eingangs geschrieben:
Alf72 schrieb:
Nun wollte ich - da die neue Installation eingerichtet ist - Grub in die erweiterte Partition installieren, um die alte primäre Partition wieder "frei" zu kriegen.
Wie also jetzt? Parallel benutzen oder löschen?
Alf72 schrieb:
Meine "alte" Installation ist auf einer primären Partition (sda3) meine "neue" auf der erweiterten (sda4 bzw. sda6).
Hast also beide GRUB nicht in den MBR (Master Boot Record) geschrieben sondern ins Bootlaufwerk. Dann kann ja:
Alf72 schrieb:
Im MBR habe ich überhaupt keinen GRUB installiert! Dort schlummert der "generische" Code :D
nichts anderes anzeigen.
Alf72 schrieb:
Mein Zeil war es nun 2 Grub Installationen zu haben... einen auf sda3 - den bisherigen - und den neuen auf sda4.
Du kannst auch keine zwei GRUB in Bootpartitionen benutzen, egal ob unterschiedliche Partitionen sind oder nicht (Verschiedene Festplatten schon).
Nur Eine Partition kann mit dem Boot-Flag versehen werden.
R0zatI.png

Alf72 schrieb:
Warum aber finde ich nach meinen YAST Experimenten keinen Grub in sda4, obwohl ich doch "Aus erweiterter Partition starten" gewählt habe :???:
Welche "Experimente" hast du denn gemacht?
Code:
locate stage|grep grub
Zeigt dir wo Du Grub installiert hast.
Falls Du das Programm locate noch nicht installiert hast dann schau mal nach findutils-locate im Software-Management oder installiere es direkt:
Code:
zypper in findutils-locate
Alf72 schrieb:
Nach meinem manuellen Eingriff - expliziter Aufruf von GRUB Setup
Wenn er nun also da ist, bootet Dein System dann nun die 11.3 oder die 10.3?
Alf72 schrieb:
Hoffe das war ein wenig verständlich... vielleicht ist es ja auch ein YAST Problem :???:
Glaube ich nicht.

lieben Gruß aus Hessen
 
Hehe... scheint nicht verständlich gewesen zu sein :D

Ja... erst einmal parallel benutzen... später löschen... sorry, da war ich nicht präzise.

Ich weiß jetzt nicht, was Du mit
Dann kann ja:... nichts anderes anzeigen
meinst :???:
Ich habe mir den Bootcode der beiden Partitionen sda3 und sda4 angesehen... in einem war der Grub (sda3), im anderen nicht (sda4). Im MBR ist KEIN Grub, sondern lediglich der generische Code... dort habe ich auch noch nie nach Grub gesucht!

Siehe mein erster Beitrag:
aber ein "dd if=/dev/sda4 count=1|hexdump -C" zeigt mir, dass Grub sich nicht da befindet...

Und doch... ich kann 2 Grub nutzen... es funktioniert ja auch mittlerweile (nach dem manuellen Eingriff). Der generische Code lädt die aktive Partition... die kann nun entweder sda3 ODER sda4 sein.

Meine Experimente waren - wie oben geschrieben
Ich habe es bisher nur über YAST versucht:
Bootloader-Installation -> Speicherort der Bootloaders -> Aus erweiterter Partition starten
Grub in die erweiterte Partition schreiben zu lassen und von dort zu Starten (diese Partition als aktive). Das hat nicht funktioniert. Erst nach dem manuellen Eingriff geht es jetzt.

Und mein System bootet jetzt richtig... also die aktive Partition. Egal ob neu oder alt.

Scheint, dass wir irgendwie aneinander vorbei reden ;)

Ich dachte, Du hättest eine Erklärung dafür, dass YAST den Bootloader nicht in die erweiterte Partition geschrieben hat. Daher war ich neugierig.

Gruß Alf
 
Alf72 schrieb:
Was meinst Du mit "menu.lst"
makeactive ist ein GRUB-Befehl, durch den GRUB Betriebssystemen wie Windows vorgaukelt, daß deren Partition "aktiv" sei. Dieser Befehl steht üblicherweise in der menu.lst, die ja dazu erfunden wurde, um nicht bei jedem Systemstart die notwendigen Befehle eingeben zu müssen.

Alf72 schrieb:
Bin mir zwar mittlerweile nicht mehr ganz sicher, ob meine Lösung wirklich so gut ist, wie ich anfangs dachte
Woher kommen diese Bedenken? Du bestimmst über das "boot flag", welcher Boot-Sektor gestartet werden soll, und das ist eine durchaus legitime Vorgangsweise.

Alf72 schrieb:
Und doch... ich kann 2 Grub nutzen...
Das hast Du richtig erkannt. Theoretisch kannst Du im MBR sowie in den Bootsektoren aller primären Partitionen, der erweiterten Partition und aller logischen Partitionen jeweils einen eigenen GRUB installieren, von jedem zu jedem springen, in jedem GRUB jede beliebige Menü-Datei verwenden und zwischen den Menü-Dateien wechseln. Praktisch wird es nicht viel Sinn machen, die Gesamtmenge aller Möglichkeiten zu realisieren.
 
Oben