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

Problem:suse-Installer vorgeschlagene Festplattenreihenfolge

apox

Member
Hi,

ich möchte Suse 11.0 auf meiner Festplatte (neu) installieren, da ich mit KDE 4 unzufrieden bin und lieber das 3.5er haben möchte. Anyways, ich habe eine 500GB SATA-Festplatte, die meine primäre Platte ist. Bei 10.3 war die große 500er Festplatte bei mir noch mit sdb bezeichnet, jetzt heisst sie sda. Ich habe auch noch eine alte 200GB IDE-Festplatte nur für Daten,die früher sda hiess und jetzt sdb. Hier mal meine Partitionierung:

Code:
Platte /dev/sda: 500.1 GByte, 500107862016 Byte
255 Köpfe, 63 Sektoren/Spuren, 60801 Zylinder
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
Disk identifier: 0x000ea9f5

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sda1               1         262     2104483+  82  Linux Swap / Solaris
/dev/sda2   *         263        2873    20972857+  83  Linux
/dev/sda3            2874       60801   465306660   83  Linux

Platte /dev/sdb: 200.0 GByte, 200049647616 Byte
255 Köpfe, 63 Sektoren/Spuren, 24321 Zylinder
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
Disk identifier: 0x0001aec1

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sdb1               1       24321   195358401   83  Linux

Mein Problem ist aber nun folgendes: bei der Installation wird die 500er als sda bezeichnet, die 200er als sdb......... Trotzdem soll Grub in den Master-Boot-Record von sdb geschrieben werden..was unsinnig wäre, weil auf sdb kein Betriebssystem ist. Auf diese Weise bootet der PC jedenfalls nicht mehr und findet kein Betriebssystem, nicht mal grub. Anscheinend nimmt der PC die 500er als primäre Platte an. Wie in drei Teufels Namen kann ich diesen Suse-Installer dazu bringen, dass er grub in den MBR von sda schreibt?

Ich möchte die 200er nur ungern abklemmen, weil ich nach der Installation sonst manuell die fstab editieren muss, um die Platte doch noch gemountet zu kriegen.

Die device.map zu editieren scheint mir nutzlos, weil der Installer auch weiterhin auf sdb als grub-Installationsort besteht
Code:
(hd1)	/dev/sda
(hd0)	/dev/sdb

Ich muss mal sagen dass mich die Suse-Entwickler in diesem Punkt echt tierisch ankotzen. eine alte IDE und eine neue SATA-Platte zum Booten ist doch keine so ungewöhnliche Konstellation, dass man immer wieder das mit der Festplattenreihenfolge versauen kann. Das haben die schon bei einigen 10.3er Kernel-Updatess nicht richtig auf die Reihe gekriegt! :evil: :evil:
 
A

Anonymous

Gast
Da du deinen ersten Beitrag gelöscht hast, schreibe ich dir eben meine Antwort darauf hier in diesen Beitrag, er beantwortet auch deine Frage nach dem wie.

Wie es aussieht findet der Rechner beim booten entsprechend der Bootreihenfolge die im BIOS eingestellt ist keinen Bootloader auf der Platte und sucht über LAN weiter. Wenn du prüfen willst ob sich auf deiner sda überhaupt im MBR ein Grub befindet kannst du das als root von konsole wie folgt machen.
Code:
dd if=/dev/sda count=1 | strings
Bei einem Grub Bootloader im MBR kommt dann etwa so eine Ausgabe
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.0220119 s, 23.3 kB/s
ZRrK
D|f1
GRUB
Geom
Hard Disk
Read
Error
Wenn dort einer ist, dann heißt das noch nicht das er auch aktuell ist. Bei deinem Fehlerbild scheint er jedoch gar keinen zu finden. Wenn er sich also dort befindet, dann ist im BIOS die falsche Platte zum booten angegeben.
Ist dort gar kein Grub dann von DVD booten und den Bootloader neu schreiben, entweder über Yast oder aus der Konsole mit
Code:
grub_install /dev/sda

robi
 
OP
A

apox

Member
Ich kriege folgende Ausgaben für dd if=/dev/sda count=1 | strings

Code:
1+0 Datensätze ein
1+0 Datensätze aus
512 Bytes (512 B) kopiert, 7,3473e-05 s, 7,0 MB/s
Z^Vr
TestDisk
1234F
ANDTmbr
ich hatte mal ein bisschen mit Testdisk rumprobiert, kann mir aber nicht vorstellen dass es den MBR irreparabel beschädigt hat. :cry:

Und für dd if=/dev/sdb count=1 | strings, da wo ich grub überhaupt nicht haben will ;-)

Code:
1+0 Datensätze ein
1+0 Datensätze aus
512 Bytes (512 B) kopiert, 8,8e-05 s, 5,8 MB/s
ZRrK
D|f1
GRUB
Geom
Hard Disk
Read
 Error

Den zweiten Befehl den du vorgeschlagen hast, funktioniert nicht:
Code:
linux-k0aa:/home/xyz # grub-install /dev/sda


    GNU GRUB  version 0.97  (640K lower / 3072K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename. ]
grub> setup --stage2=/boot/grub/stage2 (hd0) (hd1,1)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  15 sectors are embedded.
succeeded
 Running "install --stage2=/boot/grub/stage2 /boot/grub/stage1 d (hd0) (hd0)1+15
 p (hd1,1)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
Done.
grub> quit

Problem dabei: wenn ich wieder dd if... verwende, hat sich die Ausgabe im Vergleich zu vorher nicht verändert. Booten geht immer noch nicht.
 

marbas13

Hacker
Ein bisschen Off-Topic: Die im BIOS eingestellte Boot-Reihenfolger beeinflusst die Vergabe der Laufwerkskennungen ? Wie oben angedeutet...?!
 
A

Anonymous

Gast
apox schrieb:
Den zweiten Befehl den du vorgeschlagen hast, funktioniert nicht:
linux-k0aa:/home/xyz # grub-install /dev/sda
......
Problem dabei: wenn ich wieder dd if... verwende, hat sich die Ausgabe im Vergleich zu vorher nicht verändert. Booten geht immer noch nicht.
Funktioniert hat der schon, aber hat wieder auf sdb installiert. Keine Ahnung warum sich Grub so in die sdb verliebt hat, an der device.map hast du nichts geändert, hoffe ich mal.

also wenn man den Scripten nun auch nicht mehr trauen darf, dann doch anders. Mit der Grubshell selbst arbeiten. Befehl grub und dann die Eingaben wie unten angegeben.
Code:
# grub
grub> root (hd1,1)
...
grub> setup (hd1)
....
grub> quit
PS : Hab jetzt rausgefunden warum grub-install nicht auf die sda installiert hat. Das war bis 10.2 noch ein wunderschönes eigenständiges Script, jetzt macht es weiter gar nichts mehr als nur noch die /etc/grub.conf in der grubshell ausführen. :mrgreen:
more /usr/sbin/grub-install
#!/bin/sh

# Instead of the unsupported guessing method of the original grub-install
# script, use the grub installation scriptlet generated by yast.
na ja ist auch ne Methode, alles was dann entgültig mal gut funktioniert wird einfach nicht mehr supported. Wie soll man auch sonst vorwärts kommen, wenn man immer nur an dem bestens Erprobtem festhält. :lol:

robi
 
OP
A

apox

Member
weisst du was.... es bleibt spannend ;-)

Hier mal meine device.map, da habe ich nicht dran rumgedoktort
Code:
(fd0)	/dev/fd0
(hd1)	/dev/sda
(hd0)	/dev/sdb

wenn ich jetzt zu booten probiere, geht das wie folgt:
Code:
...
Loading grub stage 1.5

error no such file

Anschließend wirft er mich tatsächlich zum grub-Menü (natürlich im Text-Modus....). Wenn ich den ersten Eintrag ("boote Suse 11.0") auswähle, erhalte ich folgende Fehlermeldung:
Code:
no such Partition
Error 22
Der erste Eintrag in meiner menu.lst (ebenfalls nicht von mir verändert) lautet wie folgt:
Code:
title openSUSE 11.0 - 2.6.25.9-0.2
    root (hd1,1)
    kernel ...............
Das raff ich jetzt wirklich nicht. hd1 sollte doch genau der richtige Eintrag sein, denn hd1 ist sda ist die 500er Festplatte, von der er auch booten soll :shock:
 
A

Anonymous

Gast
http://www.linux-club.de/viewtopic.php?f=4&t=95308
Das scheint jetzt hier der zweite Fall bei Suse 11.0 innerhalb weniger Tage, Einträge scheinbar richtig, dennoch Fehler 22. Das das grub-install Script komplett geändert worden ist, und zwar schon bei 10.3 war mir bisher auch neu, allerdings habe ich derzeit noch kein 11.0 installiert, um nachzusehen was man dort am Grub noch so alles verändert hat. Aber scheinbar scheinen einige erprobte HowTos so nicht mehr zuverlässig zu funktionieren. :twisted:

Wann hast du den Fehler bekommen, nachdem du im BIOS die Bootreihenfolge geändert hast, ober nachdem du mit der Grub-shell Grub auf sda geschrieben hast ?

robi
 
OP
A

apox

Member
robi schrieb:
Wann hast du den Fehler bekommen, nachdem du im BIOS die Bootreihenfolge geändert hast, ober nachdem du mit der Grub-shell Grub auf sda geschrieben hast ?robi

Ich habe die Bootreihenfolge bei mir im BIOS nicht verändert. Der Fehler kam.....hmm, eigentlich gleich nachdem ich Suse installiert hatte. Da kann man wohl nur hoffen dass der Bug auch bei den Suse-Entwicklern schon bekannt geworden ist. :-(

Vielen Dank erst Mal dass du dir die Zeit genommen hast mir bis hierhin zu helfen :) Kommt dir bei folgenden beiden Dateien vielleicht spontan ne Idee was da schieflaufen könnte?? Nur wenn dir auf Anhieb was auffällt...

hier mal meine /etc/grub.conf
Code:
setup --stage2=/boot/grub/stage2 (hd0) (hd1,1)
quit

...und hier die ganze /usr/sbin/grub-install
Code:
#!/bin/sh
# Instead of the unsupported guessing method of the original grub-install
# script, use the grub installation scriptlet generated by yast.
# Sanity check
test -x /usr/sbin/grub && \
    grep -q quit /etc/grub.conf 2>/dev/null && \
    grub --batch < /etc/grub.conf && exit 0

# Sanity check failed -- call yast2
/sbin/yast2 bootloader

# Try again. This time it must succeed, otherwise return the error.
grub --batch < /etc/grub.conf
 
A

Anonymous

Gast
apox schrieb:
hier mal meine /etc/grub.conf
Code:
setup --stage2=/boot/grub/stage2 (hd0) (hd1,1)
quit
die müsstest du richtigerweise umändern wenn du Grub auf sda haben willst. grub-install ballert dir dann egal mit welchen Optionen du das Script startest den Bootloader auf sda. Würde dann auch mit Yast und ähnlichen Tools wieder sauber funktionieren, jedenfalls theoretisch. Aber wie gesagt, keine Ahnung was in diesem Umfeld jetzt wieder für neue, alte oder wieder ausgegrabene Bugs erfunden worden sind.
Code:
setup --stage2=/boot/grub/stage2 (hd1) (hd1,1)
quit

robi
 
OP
A

apox

Member
Hallo, ich habe mal die grub.conf entsprechend deinem Vorschlag geändert. Das Problem wird dadurch nicht gelöst -- er schreibt jedoch tatsächlich GRUB in den MBR. Ich habe da echt keine Erklärung für. Vielleicht muss man wirklich die IDE-Platte für die Dauer der Installation abklemmen *Grrr* :-(
 
Oben