Computerhilfen.de Logo
Forum
Tipps
News
Frage stellen

Andere: grub.conf geht nicht

hallo (: im vorherein: der beitrag ist lang geworden, also lies ihn ruhig nur wenn du zeit hast, und danke :) wenn du die zeit findest (:

ich nutze schon seit einiger zeit linux (gentoo von anfang an^^) und wollte es zum rumprobieren und lernen auch noch auf einen alten rechner draufhaun, windows soll daneben bestehen bleiben.
aber nachdem meine genutzte distro (kororaa, basiert auf gentoo) bei der installation auf mehrere festplatten völlig versagt hat, richte ich den bootloader nun von hand ein.

und es will nicht klappen

also erstmal meine festplatten und partitionen:
Primary Master ist eine 120 gb Festplatte und Primary Slave eine 60 gb festplatte. Der Name der Platten ist recht ähnlich, hauptsächlich unterscheiden sie sich mitten im Namen durch einmal SV (die primary master) und SP (die primary slave). warum ich das dazusage? nunja, das erste interessante ist, dass SV in einer gestarteten live-distro als hda erkannt wird und SP als hdb. im Grub ist die SV allerdings als hd1 und die SP als hd0 tituliert. Das Bios benennt SV als HDD-0 und SP als HDD-1, weswegen grub mich anfangs wirklich erstmal verwirrt hat^^

weiter:
auf hda liegen die partitionen hda1, 87.21 gb, und hda2, 1.5 gb, und dazwischen 23 gb unpartitioniert. hda1 ist reiserFS und soll "/" die wurzel werden. hda2 ist nur linux-swap.
auf hdb liegen auf den ersten 55 gb windows auf hdb1 und werden gefolgt vom letzten gigabyte der platte hdb2, was wieder reiserFS ist und wo mein grub und kernel drauf sollen. nochmal kurz:

hda/hd1:
-> hda1/hd1,0: "/", ReiserFS, 88gb
 (23gb unpartitioniert)
-> hda2/hd1,1: LinuxSwap, 1.5gb

hdb/hd0:
-> hdb1/hd0,0: Windows, NTFS, 55gb
-> hdb2/hd0,1: "/boot", ReiserFS, 1gb


meine grub.conf sieht folgend aus
 

Zitat
timeout 5

default 0

title Kororaa Gentoo
root (hd1,0)
kernel /kororaa-2.6.14.igz root=/dev/hdb2

title Windows Xp
rootnoverify (hd0,0)
map (hd0) (hd1)
map (hd1) (hd0)
makeactive
chainloader +1


dummerweise kann ich damit allerdings weder windows noch linux starten. möchte ich linux starten, kommt

 
Zitat
Booting "Kororaa Gentoo"

root (hd1,0)
 Filesystem type is reiserfs, partition type 0x83
kernel /kernel-2.6.14.igz root=/dev/hdb2

Error 15: File not found

Press any key to continue...

allerdings habe ich mich bei der kernelzeile nicht vertippt, sie ist per tabulator autovervollständigt und von mir schon geprüft.
stimmt was mit root=/dev/hdb2 nicht? müsste aber ja auch richtig sein...


an windows habe ich schon ein wenig gehandwerkt, die beiden zeilen mit dem map hatte ich ursprünglich nicht drin und erntete dafür
Zitat
Booting command-list

rootnoverify (hd0,0)
makeactive
chainloader +1


NTLDR fehlt
Neustart mit Strg+Alt+Entf

nachdem ich ein wenig im internet gelesen habe, fand ich, dass man diese beiden zeilen einfügen soll, wenn man Windows auf einer Festplatte, die Slave ist, installiert hat. Jetzt ergibt sich für mich folgendes Bild:
Zitat
Booting "Windows Xp"

rootnoverify (hd0,0)
map (hd0) (hd1)
map (hd1) (hd0)
makeactive
chainloader +1

und immerhin zwei Zeilen tiefer blinkt noch der Cursor, aber es tut sich nichts und ich kann auch nur mit dem resetknopf etwas bewirken ):




Du bist am Ende angelangt und ich dank dir fürs lesen :D
wenn du ne idee hast, was ich machen kann oder falsch gemacht haben könnte, bin ich voll ohr (:

ganz liebe grüße, michael (:

Antworten zu Andere: grub.conf geht nicht:

Naja ReiserFS warum?

Warum keine extra für boot auf ext2/ext3?

Warum 1,5GB Platzverschwendung ähm swap?


 

Zitat
Booting "Kororaa Gentoo"

root (hd1,0)  <=  (hd1,1)
 Filesystem type is reiserfs, partition type 0x83
kernel /kernel-2.6.14.igz root=/dev/hdb2

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Also deine Festplattennamen irritieren mich... nein, ich halte sie einfach für falsch! Was sagt denn deine device.map?

(cat /boot/grup/device.map)

 

Zitat
Also deine Festplattennamen irritieren mich
das geht schon, aber was, wo drauf ist!  ::)

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Das geht? eine gestartete live-cd erkennt die Platten aber anders... das irritiert mich.
Für mich war bislang auch: hda1 in grub hd0,0
und hdb1 in grub hd1,0
Warum sollte das hier anders sein.

Dass die Partitionierung im vorliegenden Fall etwas verwurstet ist (boot und rootverzeichnisse auf verschiedenen Festplatten...da freuen sich die grubstages...;-)) ist eine andere Sache, sollte aber prinzipiell keine Probleme machen (ein Grund, hier Reiser zu nehmen..... da werden stage1 und stage2 nochmal extra hart verlinkt....oder so....)
Aber generell geb ich dir recht.... warum einfach, wenn es auch kompliziert geht?

 

Zitat
eine gestartete live-cd erkennt die Platten aber anders... das irritiert mich.
kommt drauf an welche Distri man am wickel hat!

bei meiner Distri werden alle HDD's
egal ob IDI, SCSI oder SATA als sd-Geräte erkannt und
in grub natürlich als hdx.y -Geräte
 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Das ist wohl war...aber unabhängig davon ob sd oder hd... bei Beiden wäre das a dahinter gleichbedeutend mit der Platte 0 in Grub. Oder irre ich mich? wenn dem so ist, muss der Ausgangsposter lediglich die Festplattennummern tauschen. 

die Festplattennotierung

Linux
hda/sda
grub  hd0 in beiden Fällen natürlich

Linux hda1/sda1
grub  hd0,0

Linux hdb1
grub  hd1,0

usw

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

 

Zitat
weiter:
auf hda liegen die partitionen hda1, 87.21 gb, und hda2, 1.5 gb, und dazwischen 23 gb unpartitioniert. hda1 ist reiserFS und soll "/" die wurzel werden. hda2 ist nur linux-swap.
auf hdb liegen auf den ersten 55 gb windows auf hdb1 und werden gefolgt vom letzten gigabyte der platte hdb2, was wieder reiserFS ist und wo mein grub und kernel drauf sollen. nochmal kurz:

hda/hd1:
-> hda1/hd1,0: "/", ReiserFS, 88gb
 (23gb unpartitioniert)
-> hda2/hd1,1: LinuxSwap, 1.5gb

hdb/hd0:
-> hdb1/hd0,0: Windows, NTFS, 55gb
-> hdb2/hd0,1: "/boot", ReiserFS, 1gb

Damit ergibt sich folgendes Fehlerszenario:
1.) Er hat grub auf hda in den mbr schreiben lassen. Dann wäre die grub.conf aber falsch, weil grub sich nach stage1 selbst nicht mehr findet.
2.) Er hat grub tatsächlich in den mbr von hdb installiert - dann muss er im bios die zweite Platte zum starten bevorzugen.
3.) Er hat grub in den boot-sector der zweiten Platte installiert.... keine Ahnung, was dann passieren würde.

TEUFELSWERK.... ???

hi, cool, dass ihr diskutierfreudig seit :D
es freut mich, vor allem da ich experimentierfreudig bin. schwer zu verkennen.

mir scheint, ich muss wohl als erstes nochmal erläutern, wie es zu der partitionierung kam. ausgangspunkt ist, dass ich das installierte windows einmal neu machen wollte, die mitgelieferte windows-cd (damals war xp grad neu - und ich habe einen xp-rechner gekauft) hat aber nicht nach reparieren oder ähnlichem gefragt, sondern sofort lustig drauf losinstalliert. nach paritionieren hat sie auch nicht gefragt und einfach ein zweites windows xp installiert. dessen dateien - also wirklich die dateien des betriebssystems - verteilte es auf beide festplatten. also habe ich erstmal partitionen gelöscht, eine festplatte abgesteckt und dann nochmal installiert und zuguterletzt die andere festplatte wieder angesteckt. das alte windows habe ich draufgelassen, da ich zu faul war, alle dateien, programmdateien usw erst sicherheits zu kopieren. jetzt habe ich zur installation von linux aber eine der beiden installationen einfach gelöscht (partition gelöscht, festplatte leer) und so lag eine windowsinstallation auf hdb mit einem gigabyte hinten frei (unpartitioniert) und hda war leer.

irgendwann habe ich mal gehört, wenn man 2 festplatten hat, soll man den kernel (bestens) auf eine andere festplatte als wo die rootpartition liegt, verlegen, da beim arbeiten dann programme/dateien und der kernel gleichzeitig gelesen werden können ohne dass die nadel sich zuviel bewegt. bisher dachte ich, der kernel wird zuerst vollkommen in den ram geladen und deswegen verstand ich diesen hinweis nicht so ganz, aber bei der mir vorliegenden partitionierung mit ein GB hinter windows unpartitioniert, bot sich gerade mal an, dem hint zu folgen.

mit reiserFS arbeite ich schon lange und da habe ich mich gefragt 'warum nicht einfach auf der bootpartition auch?' - wenn es doch eigentlich auch egal ist, welches dateisystem ich da verwende. gerade wenn die partition einen gigabyte groß ist.

swap habe ich drauf, da der rechner nur 512 mb ram hat. (beim kauf nur 256 und windows hat schon nach dem boot in die auslagerungsdatei geschrieben :D *lach*) möchte ich mal eine größere bilddatei mit vielen ebenen bearbeiten oder - besser - gleich mehrerer solcher dateien gleichzeitig ;) sollte der rechner doch wenigstens die festplatte mitnutzen anstatt out-of-memory zu gehen und meine arbeit ist dahin. (passiert doch dann, oder?)

soweit so gut, also stelle ich im bios hdd-1 (hdb/hd0) als startfestplatte ein und setze auf hdb/hd0 die boot-flag auf die 2. partition hdb2/hd0,1 (auf hda ist keine boot-flag gesetzt)
um den mbr einzustellen habe ich ne livecd gestartet, hda1/hd1,0 gemountet und gechrootet und dann den befehl grub eingegeben. dort habe ich dann "root (hd1,1)" und "setup (hd1)" eingegeben. - Moment, habe ich wirklich das eingegeben? das wäre ja jetzt falsch, aber damals war ich davon überzeugt, dass grub hda als hd0 und hdb als hd1 tituliert, also müsste ich alles wie beschrieben eingegeben haben. wie lese ich aus, was ich eingegeben habe? dem muss ich nochmal nachgehen. - dann habe ich "quit" eingegeben und in der bash "init 6", so, cd raus, sehen was passiert. grub startet sich und dass es das tat, versteh ich jetzt nicht mehr ganz^^

allerdings kam dann beim start von linux oder windows, dass der bootloader das dateisystem nicht kennt und die gewählte partition nicht starten kann, bei starten von linux sah das zum beispiel so aus:
 

Zitat
Booting command-list

root (hd0,0)
 Filesystem type unknown, partition type 0x7
kernel /kororaa-2.6.14.igz root=/dev/hdb2

Error 17: Cannot mount selected partition

Press any key to continue...
an der stelle dann musste ich probieren und festgestellen, dass im grub hda==hd1 und hdb==hd0 gilt. nachdem ich jeweils die root-zeilen (einmal root, einmal rootnoverify) korrigiert hatte kam ich dann zu den errors, die ich in meinem allerersten post beschrieben haben.


finde es toll, wie ambitioniert hier alle beim thema sind. selbst finde ich es immer wieder schön, etwas dazuzulernen und habe zum beispiel von der grub/device.map noch nie etwas gehört und auch von den grub-stages keine ahnung gehabt.

zu guterletzt noch meine device.map: 
Zitat von: grub/device.map
(hd0)   /dev/hda
(hd1)   /dev/hdb
« Letzte Änderung: 02.02.09, 22:18:07 von desperate2 »

 

Zitat
Booting "Kororaa Gentoo"

root (hd1,0)  <<<<<=======  (hd1,1)
 Filesystem type is reiserfs, partition type 0x83
kernel /kernel-2.6.14.igz root=/dev/hdb2 

hier ist eine Änderung!
falls du booten willst!

 
Zitat
irgendwann habe ich mal gehört, wenn man 2 festplatten hat, soll man den kernel (bestens) auf eine andere festplatte als wo die rootpartition liegt
Partition, Partition!

Zitat
swap habe ich drauf, da der rechner nur 512 mb ram hat. (beim kauf nur 256 und windows hat schon nach dem boot in die auslagerungsdatei geschrieben
Vergessen das du mit Linux arbeitest? hier reichen 512MB dicke!

 
Zitat
root (hd0,0)
 Filesystem type unknown, partition type 0x7
kernel /kororaa-2.6.14.igz root=/dev/hdb2
 
So kann es auch nicht funktionieren,
weil Partition type 0x7 ist NTFS!

hi knut, danke wieder der schnellen antwort, aber so falsch liege ich garnicht.


hier ist eine Änderung!
falls du booten willst!
nein, nein, denn (hd1,1) ist ja meine swap-partition, denn sonst wäre Partition 0 auf hd1 ja nicht reiserFS, sondern NTFS (siehe unten nochmal)
aber du meinst, die root-zeile gibt an, wo der bootloader die "/" wurzel beim suchen des kernels ansetzen soll und nicht, wo der kernel die wurzel für das dann laufende linux ansetzt. dann habe ich da schon einen denkfehler, danke, probier ich dann gleich. erklärt die meldung "File not found"
trotzdem erstmal zu dem rest^^

Partition, Partition!
Bootloader und Kernel der Ordnung halber auf eine eigene Partition zu setzen verstehe ich noch, aber es ging ernsthaft um das gleichzeitige lesen von kernel-informationen und zB binär-programm-texten oder einfach dateien. kam mir wie gesagt auch seltsam vor, aber es bot sich an, den vorschlag mit einer anderen festplatte einfach mal umzusetzen. daran sollte es ja nicht scheitern, oder? (oder? (: )

[/url] Vergessen das du mit Linux arbeitest? hier reichen 512MB dicke!

trotzdem kann ich auch mit linux programme ausführen, die den arbeitsspeicher auslasten, wie bild- oder videobearbeitung zum Beispiel. aber bisher macht die swap nichts weiter als rumliegen, sie sollte jetzt erstmal nicht stören, ich kümmere mich später um sie. empfindest du swap wirklich so sinnlos? ist vielleicht auch einmal was, worüber man reden kann, geht sicher aber erstmal offtopic. bin trotzdem ganz ohr, wenn du dazu was schreibn möchtest :) per pn vielleicht?

So kann es auch nicht funktionieren,
weil Partition type 0x7 ist NTFS!
ja, (hd0,0) ist ntfs. das war der punkt an dem ich dann bemerkt habe, dass hdb==hd0 gilt. ich wollte an dieser stelle nur noch einmal den moment, an dem ich das bemerkt habe, deutlich machen.



gutgut, korrigier ich mal den fehler in der rootzeile, ich war irgendwie fest davon überzeugt, dass diese rootzeile dem kernel übergeben sollte, wo er den "/" root ansetzen soll. weiß nicht, warum ich davon so überzeugt war, jetzt seh ichs. :) danke

 

Zitat
hdb/hd0:
-> hdb1/hd0,0: Windows, NTFS, 55gb
-> hdb2/hd0,1: "/boot", ReiserFS, 1gb

lt dieser Aussage ist deine /boot
auf hdb2, also
grub hd1,1
 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Wie ich's mir gedacht habe. Festplattenordnung im Bios umgebogen...
Dann noch ein Problem: dein ntloader wird wirklich nicht da sein... den hast du dir beim löschen der ersten Festplatte gehimmelt.
Die einfachste Lösung, um alle Probleme ein für allemal los zu werden: mach alles neu.
Selbst wenn du es jetzt schaffst, alles nochmal hinzubiegen, in ein paar Monaten ist das vergessen.... und dann verliert man schnell den Überblick. Das Verteilen von "/" und "/boot" auf zwei Festplatten ist (wie du siehst) nicht wirklich die beste Idee, die ich je gelesen habe...;-)   

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Und noch eins: deine device.map passt nicht zu deinen Aussagen (und in diesem Falle auch nicht zum System.)

Ergo: nach dem Umbiegen der Bootreihenfolge im Bios sollte deine Windows Startpartition hd0,0 sein und deine linux-Anfangsadresse hd0,1

Im Grunde ist aber durch diese Trickserei alles schief.


« Debian: MountenVirtual PC 2007 mit Opensuse 11 »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Festplatte
Die Festplatte, oft auch als Hard Disk Drive (HDD) bezeichnet, ist ein interner Datenträger im Computer. Man unterscheidet zwischen den Größen der Geh&aum...

Hostname
Ein Hostname ist der eindeutige Name, der einem Gerät in einem Netzwerk zugewiesen wird. Dieser Name wird (parallel zu der IP Adresse) verwendet, um das Gerät i...

BIOS
Das BIOS (Basic Input Output System) ist ein Programm, das in jedem PC - auf einem EPROM Chip auf dem Mainboard - bei jedem Starten ausgeführt wird, bevor das e...