PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : GRUB - alles, nur Linux bootet nicht



Yawgmoth
14.10.03, 05:47
Ein Problem, das auf den ersten Blick nicht derart oft vorzukommen scheint *g* - so wie ich das zumindest auf meiner Suche bisher feststellen konnte (Vorher text-only Konsolenbrowser, jetzt Bezilla - immerhin etwas besser, zumindest nach meinem Geschmack *g*).

Situation:

Auf meiner Box übernahm bis heute XOSL die Rolle des Bootmanagers. Aufgrund der scheinbaren Blindheit gegenüber allen anderen Festplatten als der die root-partition von XOSL beherbergende, sehe ich mich nun gezwungen eine andere Software für diese Aufgabe einzusetzen. GRUB scheint dafür sehr geeignet zu sein, da es sich dabei um ein autarkes System handelt, welches keinerlei embedded-Attribute aufweist, wie dies bei XOSL ebenfalls der Fall war. Jedes der Betriebssysteme verfügt über einen eigenen Bootloader, das einzige was fehlt ist ein Manager. GRUB würde von daher lediglich die Aufgabe eines Pointers übernehmen, der auf die jeweiligen Partitionen verweist, welche für ihre Betriebssysteme über eigene Bootloader verfügen, die dann die restliche Arbeit übernehmen (Wie es bei XOSL der Fall war). Soweit ich das bisher erkannt habe, besteht in dieser Hinsicht der Unterschied zwischen XOSL und GRUB nur darin, dass GRUB in der Lage ist, andere Festplatten zu erkennen, allerdings scheine ich nicht in der Lage zu sein, ihn entsprechend zu konfigurieren (Bei XOSL war die Konfiguration SEHR einfach - es ist von daher auch SEHR einfach zu erkennen, was XOSL zu erkennen nicht in der Lage ist;) ). Vor ein paar Tagen las ich kurz etwas bezüglch GRUB, und gestern fing ich damit an, mich mit dem Bootmanager auseinanderzusetzen. Diverse Helpfiles sowie Texte auf diversen Seiten gaben zwar einen besseren Einblick in GRUB, sowie Informationen in Sachen Konfiguration, allerdings nicht wirklich bezüglich dem, was das Problem verursacht und wie es zu lösen ist.

Grund für den Umstieg: Gentoo Linux, das erste System in meiner Box, welches nicht auf hdb installiert ist. Begonnen mit dem Aufsetzen von Gentoo-Linux habe ich vor 3 Tagen (Es gab einige Rückschläge, wie beispielsweise Probleme mit ebuilds die sich im späteren Verlaufe von # emerge system bemerkbar machten, welche schlussendlich einen Neuanfang der Installation erzwangen - man sollte halt nicht frisches Material von der Website mit Material von der Live-CD mischen;) ).


Problem:

Die Windows-Systeme sowie BeOS auf hdb sind problemlos erreichbar. Das Problem stellt Gentoo-Linux auf hdc dar. Jegliche Zugriffsversuche anseiten von GRUB laufen auf Fehlermeldungen hinaus die besagen, dass /dev/hdc2 (hd1,1) kein valides Gerät sei.

Betriebssysteme:

-Windows 98 (/dev/hdb2 - auch der NT-Loader befindet sich auf dieser Partition. Für die Windows-Systeme ist dies Partition C)
-BeOS (/dev/hdb6)
-Windows 2000 (/dev/hdb7)
-Gentoo Linux (boot: /dev/hdc2. root: /dev/hdc6)
-Ein Linux welches später hinzukommen wird (boot: /dev/hdb1. root: /dev/hdb8)


Partitionstabelle:

-> /dev/hda: CD/DVD-ROM
-> /dev/hdb:
-hdb1 ext2fs (Wird später ext3fs) /boot eines Linux-Betriebssystems welches später hinzukommen wird.
-hdb2 FAT32 /w98 (SE)
-hdb5 FAT32 /data (Die inhaltlich etwas grundlegendere Datenpartition - seht es einfach als eine der beiden Datenpartitionen)
-hdb6 BeFS BeOS
-hdb7 NTFS /w2k
-hdb8 ext2fs (Später reiserfs vorgesehen) / (root) des später hinzukommenden Systems.
-hdb9 swap 1
-hdb10 (Zur Zeit ext3fs) <- BOOTMANAGER-PARTITION (Funktioniert mit XOSL und GRUB - nur, dass XOSL keine ersichtliche Möglichkeit bietet, andere Partitionen zu erkennen als die von hdb, und GRUB hdc grundsätzlich nicht als existent wahrhaben will).
-> /dev/hdc:
-hdc1 FAT32 /data0 (Die inhaltlich eher storage-orientierte Datenpartition - ein Windows 98 SE ist auch nocht drauf, wurde mal im Rahmen einer radikalen Problemlösung installiert und hat seinen Zweck damals erfüllt - nicht mehr weiter wichtig)
-hdc2 ext3fs /boot von Gentoo Linux
-hdc3 reiserfs Platzhalter-Partition (Wäre nicht unbedingt nötig gewesen - ich hätte auch ganz einfach 5112 MB unpartitioniert lassen können *g*).
-hdc5 swap 2
-hdc6 reiserfs / (root) von Gentoo Linux
-hdc7 reiserfs (Gerade neu dazugekommene Datenpartition für alles was auf einem Linux-orientierten Filesystem möglicherweise besser aufgehoben ist. Ich denke da ans arbeiten mit sources, etc.)
/dev/hdd: CD-R/CD-W (Brenner)

RAM: 256 (Für den Fall von Experimenten mit Game-server software könnte etwas mehr swap-space nicht schaden;) )


grub.conf: (GRUB ist auf /dev/hdb10; oder in GRUB-Terminologie auf hd0,9)

#grub.conf for GRUB
default 0
timeout 30
splashimage=(hd0,9)/boot/grub/splash/xpm.gz

title=Gentoo
root (hd1,1)
chainloader +1

title=Windows
root (hd0,1)
chainloader +1

title=Zendomlinux
root (hd0,1) #<- Oops, da ist mir grad ein Bug aufgefallen *g* - das sollte hd0,0 heissen - allerdings hat dies noch keine Auswirkungen, da dieses System ja noch nicht in Betrieb gesetzt ist.
chainloader +1

title=BeOS
root (hd0,6)
chainloader +1

title=Reinstall
root (hd0,9)
setup (hd0)


device.conf:

(fd0) /dev/fd0
(hd0) /dev/hdb
(hd1) /dev/hdc

Yawgmoth
14.10.03, 17:47
Nun ja *g* - ich gönne mir zur Zeit zwar ne Konsolenpause weil ich nicht in der Lage bin, die Installation von Gentoo fortzusetzen - dennoch hege ich ein gewisses Interesse daran, die Installation in Bälde fortsetzen zu können :D

Schon kleine Hinweise auf Fehler, Ideen, Gedanken etc. können sehr hilfreich sein. Ich habe schon das eine oder andere in Sachen "mapping" vernommen, möglicherweise könnte dies ein Schlüssel zur Lösung sein. Was ich insbesondere Wissen sollte ist, ob Grub spezielle Parameter benötigt, um unter den gegebenen Umständen vollumfassend seiner Aufgabe gerecht werden zu können.

Btw. Noch etwas: Grub hat 2 Schönheitsfehler. Einerseits erscheint das Menu nicht sofort, sondern erst nach dem ein Befehl gegeben wurde - und zwar der Start des ersten titles. Mit dem und der Tatsache, dass das Boot-Menu mit vertikalen weissen Streifen durchsetzt ist wäre ja auszukommen, allerdings stellt mich die Tatsache, dass zu Anfang keine Auswahl getroffen werden kann vor ein Problem. - Wie auch immer, dieses Problem könnte möglicherweise mit einer Fake-Konfiguration gelöst werden, die Grub sich selbst erneut booten lässt - und dann hoffentlich gleich mit Menu. Von daher sind diese Probleme vorerst sekundär, das Problem mit Gentoo-Linux hat in der Liste meiner Probleme mit Grub oberste Priorität.

drummermonkey
17.10.03, 10:21
Ich kann dir zwar nicht bei deinem Problem helfen, aber ich hab ne Frage an dich:
Warum hast du die CD-Roms als Primary Master/Secondary Slave und die Festplatten als Primary Slave/Secondary Master?
Würde es nicht mehr Sinn machen die beiden Festplatten als Primary Master/Slave und dir CD-Roms als Secondary Master/Slave zu benutzen?

Stage
17.10.03, 10:47
title=Gentoo
root (hd1,1)
chainloader +1


na das kann ja net hinhauen, wenn du mal in die Installanleitung schaust heißt das da korrekt

root (hd1,1)
kernel (hd1,1)/boot/KERNELIMAGE root=/dev/hdc6

eventuell wenn du noch ein initrd image erstellt hast (das passiert wenn du mit genkernel den kernel baust) kommt noch folgende ziele dazu

initrd (hd1,1)/boot/INITRDIMAGE

so und für KERNELIMAGE und INITRDIMAGE
musst du den korrekten dateinamen angeben

EDIT: ich sehe gerade dein grub ist auf hdb10 , da frag ich mich warum du dann noch eine extra /boot partition für Gentoo nimmst ?

Yawgmoth
12.11.03, 06:15
-> Ich habe die Sache für eine Weile beigelegt, nun wieder kurz aufgegriffen - vielleicht bekomme ich irgendwo, hier, in Chats, oder von sonst jemandem Hilfe bei der Lösung dieses Problems.

Nun, wie meinen Einleitungstexten zu entnehmen ist brauche ich für diese Aufgabe keinen Bootloader, sondern nur einen Boot-Manager. Die Bootloader-Aufgabe übernimmt ein anderes System, mit dem dieser GRUB auf hdb10 nichts zu tun hat. Diese partition ist reserviert für den Boot-Manager, welcher zu einem früheren Zeitpunkt nicht als bootloader tauglich war, und dies in Zukunft möglicherweise auch nicht mehr sein wird, sie dies für Linux oder andere Betriebssysteme. Entweder ist es möglich GRUB als reinen Bootmanager hinzubekommen, oder ich höre sofort auf zu versuchen GRUB für diese Aufgabe zu etablieren.

Es geht dabei nicht darum, ob Linux auf besagter hdc-Partition liegt - es geht ganz einfach darum, dass dort ein anderes bootbares System angesprochen werden soll, zu was GRUB aus irgend einem Grund nicht in der Lage scheint. Ich habe die Sache auch von hdc aus versucht - in dem Fall war GRUB nicht in der Lage, irgendwas von hdb zu lesen. Wie dem auch immer sei, chainloader sollte ein anders Bootsystem von hdc laden, das ist alles. GRUB sollte nichts weiters tun, als den Pointer vom Dienst zu sein, und das nicht nur auf hdb - denn dann könnte ich genausogut XOSL einsetzen, welches diese einfache Aufgabe wohl am besten beherrscht - ausser, dass es ebenfalls nicht in der Lage ist, über die eigene Partition hinauszusehen.

Das mit dem verqueren DVD-ROM auf /dev/hda ist schon seit Anfang so - irgendwie mag ich das nicht ändern, ich meine, heutzutage darf man von einem Bootmanager erwarten, damit umgehen zu können, im Gegensatz zu LILO =\

k.k
12.11.03, 13:08
Hi, ich zitiere mal aus der Gentoo-Installationsanleitung.
Vielleicht ist es ja der Grund :)



Wichtig
Wenn Ihre /boot Partition, dort wo der Kernel unterbracht ist, eine ReiserFS Partition ist, achten Sie darauf, dass diese mit der -o notail Option gemountet wird, sonst wird GRUB nicht richtig installiert. Stellen Sie auch sicher, dass die Option notail mit in die /etc/fstab eingetragen wird, doch dazu später mehr. Wenn Sie LILO mit ReiserFS verwenden möchten, dann ist die -o notail Option nicht notwendig. Dennoch ist es immer sicher, die -o notail Option mit ReiserFS zu verwenden, wenn Sie nicht wissen, was zu tun ist.


Falls nicht verzeihe mir ich bin auf Arbeit und konnte nicht alle Posts durchlesen weil ich eigentlich arbeiten muss. ;)