expertenaustausch > comp.os.* > comp.os.unix.linux.misc

Helge Kruse (04.01.2007, 22:24)
Hallo,

nachdem ich mein Gentoo installiert habe, bootet es nicht.

Der Installer hatte die Platten /dev/hdb1 (Windows) und /dev/hdd (Frei)
gefunden. Auf /dev/hdd hatte ich die default Konfiguration gewählt. Als Boot
Device habe ich /dev/hdd ausgewählt. (/dev/hdd1: ext2,/boot,100MB,
/dev/hdd2: swap, /dev/hdd3: ext3,/,13724MB). Bootloader: grub, Install to
MBR: yes. Die Installation erfolgte dementsprechend auf /dev/hdd1 und
/dev/hdd3.

Leider bootet das System nicht.

grub.conf hat folgenden Inhalt:

default 0
timeout 30
splashimage=(hd1,0)/grub/splash.xpm.gz
title=Gentoo Linux
root (hd1,0)
kernel /kernel-genkernel-x86-2.6.17-gentoo-r7 root=dev/ram init=/linuxrc \
ramdisk=8192 real_root=/dev/hdd3
initrd /initramfs-genkernel-x86-2.6.17-gentoo-r7

title=Possible Windows P1
rootnoverify (hd0,0)
makeactive
chainloader +1

Wenn ich mir unmittelbar nach dem Installieren die Partitionstabelle von hdd
mit fdisk ansehe, fällt auf, das keine Partition als "aktiv" ausgewält ist.
Das ist im Widerspruch zum "makeactive". Den Sinn des "chainloader" habe ich
nicht erfasst.

Im BIOS sehe ich folgenden Konfiguration:
Primary Master: none
Primary Slave: Maxtor 4D040H2 (Windows XP)
Secondary Master: DVD
Secondary Slave: QUANTUM Fireball (Linux)

Im BIOS kann ich das Boot Device einstellen. Dabei ergibt sich folgende
Reaktion:
HDD0: Windows XP startet
HDD1: Ich bekomme einen einen Textbildschirm (80x25) mit blinkendem Cursor.
Nach 30 Sekunden bzw. nach Drücken von ENTER zuckt Linux schon etwas:

Booting 'Gentoo Linux'

root (hd1,0)
Filesystem type unknown, partition type 0x7
kernel /kernel*genkernel*x86*2*17*gentoo*r7 root=/dev/ram0 init=/linuxrc
ramdisk=8192 real_root=/dev/hdd3

Error 17: Cannot mount selected partition

Press any key to continue***

(Die * stehen für jeweils unterschiedliche, nicht näher beschreibbare,
Grafikzeichen.)

Drücke ich jetzt die Anykey Taste (tm), erscheint etwas, das an ein grub
Menü erinnert, nur sind alle Zeichen kaum zu lesen, senkrechte, gepunktete
Linien und anderer Unfug liegt über dem Text.
Wähle ich aus dem Menü 'Gentoo' bekomme ich wahrscheinlich wieder o.g.
Fehler. Leider ist's a.g. des unleserlichen Fonts nicht genauer zu
beschreiben. Wähle ich Windows P1, gibts eine ähnliche Fehlermeldung.

Wie sollte ich hier weiter machen?

Gruß,
Helge
Ingo Marksteiner (04.01.2007, 23:08)
Helge Kruse wrote:

> Hallo, [...]
> /dev/hdd3.


> root (hd1,0) [...]


/dev/hdd* sollte bei grub hd3,* sein. hd1,0 wäre dann /dev/hdb1.

> Gruß,
> Helge


Gruß
Ingo
Markus Koßmann (04.01.2007, 23:12)
Helge Kruse wrote:

[..]
> Primary Slave: Maxtor 4D040H2 (Windows XP)
> Secondary Master: DVD
> Secondary Slave: QUANTUM Fireball (Linux)

Was ist mit dem Primary Master ? Eine Slave ohne Master ist von IDE-Specs
nicht vorgesehen.
[..]
> Filesystem type unknown, partition type 0x7
> kernel /kernel*genkernel*x86*2*17*gentoo*r7 root=/dev/ram0 init=/linuxrc
> ramdisk=8192 real_root=/dev/hdd3

Du hast grub so konfiguriert das es die Linux Rootpartition auf der ersten
Partition der zweiten BIOS Disk sucht (root (hd1,0))
Wenn du nun aber im BIOS die Bootreihenfolge änderst, wird deine
Linux-Platte erste BIOS Disk und deine Windowsplatte die zweite BIOS Disk
und du versuchst Linux von der NTFS Partition zu starten ;-).
Entweder must du grub mit dieser Konfiguration in den MBR deiner
Windowsplatte schreiben und diese booten.
Oder du bootest die Linuxplatte und schreibst grub in den MBR dieser Platte.
Dann ist deine root (hd0,0). Und und du musst Windows mit der map Option
vormachen, das es von der ersten BIOS Platte starten würde.
Helge Kruse (05.01.2007, 08:15)
Markus,

wenn ich mir die Probleme ansehe, die ich mit grub habe, möchte ich nicht
von grub abhängig sein. Damit ich unabhängig von der Linux Platte immer noch
mein Windows starten kann, werde ich nie den Windows MBR überschreiben. Um
trotzdem Linux starten zu können, hatte ich grub im MBR der Linux Platte
installiert und dann im BIOS die Boot-Reihenfolge geändert.

Ich denke, hier war der Fehler. Ich muß zuerst die Boot-Reihenfolge so
eintragen, dass Linux Booten kann. Dann kann der Genntoo Installer
(hoffentlich) die Konfiguration korrekt ermitteln.

Ich hatte bisher nur Erfahrung mit LILO, bei dem hda .. hdd physische Platte
sind, die unabhängig von der BIOS-Bootoption Bestand haben.

Falls mein o.g. Ansatz fehlschlägt, muß ich grub von Hand konfigurieren. Wie
aktualisiere ich den Linux-MBR, wenn ich die grub.conf manipuliert habe?

Gruß,
Helge
Markus Koßmann (05.01.2007, 12:35)
Helge Kruse wrote:

> Markus,
> wenn ich mir die Probleme ansehe, die ich mit grub habe, möchte ich nicht
> von grub abhängig sein. Damit ich unabhängig von der Linux Platte immer
> noch mein Windows starten kann, werde ich nie den Windows MBR
> überschreiben. Um trotzdem Linux starten zu können, hatte ich grub im MBR
> der Linux Platte installiert und dann im BIOS die Boot-Reihenfolge
> geändert.

Hast du auch schon an die Möglichkeit gedacht, Linux über das Standard
Windows Bootmenu zu starten ?
D.h. lilo oder grub in den Superblock einer Linuxpartiton zu installieren,
diesen Superblock mit dd in eine Datei zu schreiben, auf die Windows
Partition zu kopieren und bei XP in die boot.ini einzutragen ( bzw. bei
Vista bootcfg zu verwenden). Detailierte Anleitungen solltest per Google
finden.

> Ich denke, hier war der Fehler. Ich muß zuerst die Boot-Reihenfolge so
> eintragen, dass Linux Booten kann. Dann kann der Genntoo Installer
> (hoffentlich) die Konfiguration korrekt ermitteln.

Du kannt die Zuordnung Festplatte <-> BIOS-disk in /boot/grub/device.map
überprüfen/einstellen.
> Ich hatte bisher nur Erfahrung mit LILO, bei dem hda .. hdd physische
> Platte sind, die unabhängig von der BIOS-Bootoption Bestand haben.

Da kennst du lilo aber schlecht. Bei deiner Konfiguration ( IDE-CDROM
zwischen 1. und 2. Platte) wirst du lilo auch bei der Zuordnung BIOS-Disk
<-> Festplatte helfen müssen.
Wenn du dich mit lilo besser auskennst: Liefert gentoo denn keinen lilo als
Alternative mehr mit ?
Sieghard Schicktanz (05.01.2007, 22:03)
Hallo Helge,

Du schriebst am Fri, 5 Jan 2007 07:15:41 +0100:

> wenn ich mir die Probleme ansehe, die ich mit grub habe, möchte ich nicht
> von grub abhängig sein. Damit ich unabhängig von der Linux Platte immer


Du solltest Dir die Beschreibung etwas näher ansehen - Du schreibst schon
richtig, wer die Probleme hat... ;*)

> noch mein Windows starten kann, werde ich nie den Windows MBR
> überschreiben. Um trotzdem Linux starten zu können, hatte ich grub im MBR
> der Linux Platte installiert und dann im BIOS die Boot-Reihenfolge
> geändert.


Eben - und damit hast Du die Zuordnung so verändert, daß der grub die
_falsche_ Platte gesucht hat. Deswegen auch die Meldung mit dem falschen
Partitionstyp...

> Ich denke, hier war der Fehler. Ich muß zuerst die Boot-Reihenfolge so
> eintragen, dass Linux Booten kann. Dann kann der Genntoo Installer
> (hoffentlich) die Konfiguration korrekt ermitteln.


Du kannst das auch ganz einfach selber ändern, ohne den Installer zu
brauchen - die Konfigurationsdatei des grub ist eine einfache Textdatei,
die sich mit jedem Editor anpassen läßt. Im allgemeinen steht die in
"/boot/grub" als "menu.lst" drin, inzwischen findet man auch in manchen
Distributionen den Namen "grub.conf".

> Ich hatte bisher nur Erfahrung mit LILO, bei dem hda .. hdd physische
> Platte sind, die unabhängig von der BIOS-Bootoption Bestand haben.


Nee, der behandelt das ganz genauso wie der grub.

> Falls mein o.g. Ansatz fehlschlägt, muß ich grub von Hand konfigurieren.
> Wie aktualisiere ich den Linux-MBR, wenn ich die grub.conf manipuliert
> habe?


Garnich, wieso denn? Meinst Du, weil Du beim lilo immer das
Rekonfigurations-Utility ("lilo") aufrufen mußtest?
Der grub braucht das nicht.

Nur noch ein paar Hinweise zu Deiner "grub.conf" (von "oben"):

default 0
timeout 30
splashimage=(hd1,0)/grub/splash.xpm.gz

title=Gentoo Linux
root (hd1,0)
^^^^^^^ wird zu (hd0,0)
(Du hast doch die Platten im BIOS getauscht)

kernel /kernel-genkernel-x86-2.6.17-gentoo-r7 root=dev/ram init=/linuxrc \
ramdisk=8192 real_root=/dev/hdd3
^^^^^^^^^
(Hier _sollte_ die Zuordnung wieder stimmen, weil der Kernel ja seinen
eigenen Treiber für die Plattenzugriffe benutzt. Falls er sich aber von den
BIOS-Daten "überstimmen" lässt, müßtest Du da ggfs. "/dev/hdb3" einsetzen.
Probier' aber erstmal ohne Änderung.)

initrd /initramfs-genkernel-x86-2.6.17-gentoo-r7

(Die "initrd" wird eigentlich nicht gebraucht - bei meinem Test hat die im
wesentlichen zur Folge gehabt, daß die Kernel-Parameter, jedenfalls die
"root"-Einstellung, ignoriert wurden und dzf. später eine Nachfrage nach
der "root"-Partition ausgegeben wurde... Nach Eingabe ging's dann zwar
richtig weiter, aber - _muß das sein_?)

title=Possible Windows P1

map (hd0) (hd1)
map (hd1) (hd0)

(Dein Windows erwartet die Platten in der Original-Reihenfolge!
Also muß der grub "zurücktauschen".)

rootnoverify (hd0,0)
makeactive
chainloader +1

BTW: "makeactive" arbeitet dynamisch, es führt den Eintrag erst aus, wenn
es _aufgerufen_ wird. Vor dem ersten Aufruf passiert an der Partition
_garnichts_.
Der "chainloader" zieht einfach eine Anzahl Blöcke von der (hier durch das
"+1" angegebenen) Position hinter dem Boot-Sektor (hier der MBR) in den
Speicher und führt die anschließend zum Starten des Betriebssystems aus.
(Nur weil Du schreibst 'Den Sinn des "chainloader" habe ich nicht erfasst'.)
Helge Kruse (05.01.2007, 23:26)
Ich habe wie vorgeschlagen, die erste Platte von Slave auf Master geändert.
Grub identifiziert die Platte /dev/hdd weiterhin als hd1. Ich nehme an, das
bedeutet sowas wie zweite Festplatte, da das CD Laufwerk auf /dev/hdc sitzt.

Ein Ändern von hd1 auf hd3 liefert leider nur die grub-install
Fehlermeldung, dass hd3 ungültig ist. :-)

Helge
Henning Paul (05.01.2007, 23:51)
Helge Kruse schrieb:

> Ich habe wie vorgeschlagen, die erste Platte von Slave auf Master
> geändert. Grub identifiziert die Platte /dev/hdd weiterhin als hd1.
> Ich nehme an, das bedeutet sowas wie zweite Festplatte, da das CD
> Laufwerk auf /dev/hdc sitzt.
> Ein Ändern von hd1 auf hd3 liefert leider nur die grub-install
> Fehlermeldung, dass hd3 ungültig ist. :-)


GRUB numeriert die Platten in BIOS-Reihenfolge durch. Das Laufwerk, das
mit DL=0x80 beim INT13 angesprochen wird, ist hd0 und so weiter.
Vertauscht man die Bootreihenfolge im BIOS, ändert sich auch diese
Numerierung. hd0 ist immer die Bootplatte, die anderen Platten
(optische Laufwerke zählen nicht mit, da die (außer bei El-Torito-CDs
mit Festplattenemulation) nicht über den INT13 ansprechbar sind) kommen
dahinter. Hat man eine Mischbestückung mit S-ATA, P-ATA, USB- oder
SCSI-Platten, ist die Numerierung nicht immer klar.

Die map-Anweisung ermöglicht es, die Platten-IDs zu vertauschen. Soll
heißen: Wenn der GRUB der Bootplatte mit
map (hd0) (hd1)
map (hd1) (hd0)
die ersten beiden Platten vertauscht, und anschließend den Bootsektor
der zweiten Platte anspringt, wird dessen Bootloader (z.B. der
Windows-NT-Bootloader) mit DL=0x80 beim Plattenzugriff über INT13
trotzdem die zweite Platte nach BIOS-Bootreihenfolge ansprechen - und
denkt, diese Platte wäre im BIOS als Bootplatte eingetragen.

Uff. :-)

Gruß
Henning
Helge Kruse (06.01.2007, 14:10)
Henning,
vielen Dank für Deine Hinweise. Ich habe inzwischen die "Dünnbrett" Variante
gewählt und den Rechner umgebaut. Nun ist die Linux Platte als /dev/hda
vorhanden, das CDROM als /dev/hdb und die Windows Platte als /dev/hdc. Wenn
ich von IDE-1 starte, bootet das Windows weiterhin ohne Probleme.

Ich habe nun eine neue Installation durchgeführt und grub startet von
/dev/hda. Gentoo Linux wird gebootet. Windows klappt nicht. Das sehe ich
aber nicht also so dramatisch an, da diese noch mit den BIOS Optionen
möglich ist. Wie ursprünglich beschrieben bevorzuge ich auch eine Variante,
mit der ich Windows booten kann, selbst wenn etwas von der Linux Platte
nicht funktioniert. Das map werde ich vielleicht bei Gelegenheit
ausprobieren, grub bietet hier ja Möglichkeiten dieses recht interaktiv zu
tun.

Bei der Installation habe ich gnome und x11-xorg als Option angegeben.
Leider klappt es mit nicht mit dem X11 starten. Der erste Fehler lautet
(EE) Unable to locate/open config file
Ich kann kein Programm xconfig oder xsetup finden um eine config zu
erstellen. Hätte auch erwartet eine default Datei vorzufinden. Wie kann ich
hier jetzt vorgehen?

Gruß,
Helge
Henning Paul (06.01.2007, 14:20)
Helge Kruse schrieb:

> Henning,
> vielen Dank für Deine Hinweise. Ich habe inzwischen die "Dünnbrett"
> Variante gewählt und den Rechner umgebaut. Nun ist die Linux Platte
> als /dev/hda vorhanden, das CDROM als /dev/hdb und die Windows Platte
> als /dev/hdc. Wenn ich von IDE-1 starte, bootet das Windows weiterhin
> ohne Probleme.
> Ich habe nun eine neue Installation durchgeführt und grub startet von
> /dev/hda. Gentoo Linux wird gebootet. Windows klappt nicht. Das sehe
> ich aber nicht also so dramatisch an, da diese noch mit den BIOS
> Optionen möglich ist.


Oder mit der map-Anweisung, wie beschrieben. Damit kannst Du
quasi "nachträglich" die Bootreihenfolge im BIOS ändern.

> Bei der Installation habe ich gnome und x11-xorg als Option angegeben.
> Leider klappt es mit nicht mit dem X11 starten. Der erste Fehler
> lautet
> (EE) Unable to locate/open config file
> Ich kann kein Programm xconfig oder xsetup finden um eine config zu
> erstellen.


xorgcfg oder "X -configure".

Gruß
Henning
Alfred Wegener (06.01.2007, 20:03)
Henning Paul schrieb:
> Helge Kruse schrieb:
> Oder mit der map-Anweisung, wie beschrieben. Damit kannst Du
> quasi "nachträglich" die Bootreihenfolge im BIOS ändern.
> xorgcfg oder "X -configure".

Ich rate zu "Xorg -configure", das erstere hat bei mir noch nie
funktioniert.
Da kommt meist eine startbare Konfiguration bei raus. Die resultierende
xorg.conf.new muß aber noch angepaßt werden, wie z.B. höhere Auflösung,
deutsche Tastatur etc.
Mit etwas Hilfe aus dem weltweiten Netz ist das aber alles keine Hürde.
Alfred Wegener (06.01.2007, 20:14)
Sieghard Schicktanz schrieb:
[..]
> Speicher und führt die anschließend zum Starten des Betriebssystems aus.
> (Nur weil Du schreibst 'Den Sinn des "chainloader" habe ich nicht erfasst'.)
> ----


diese grub.conf funktioniert bei mir, Platte ist hda:

default 0
timeout 10
splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoo Linux (2.6.18-gentoo-r6)
root (hd0,0)
kernel /kernel-genkernel-x86-2.6.18-gentoo-r6 root=/dev/ram0
init=/linuxrc ramdisk=8192 real_root=/dev/hda3 vga=791
splash=silent,theme:livecd-2006.1 CONSOLE=/dev/tty1 quiet
initrd /initramfs-genkernel-x86-2.6.18-gentoo-r6

mit Framebuffer und Fortschrittsbalken. Zu Testzwecken wird das "silent"
auch gerne mal gegen "verbose" getauscht.
/boot hat eine eigene Partition, bei mir hda1.
Helge Kruse (06.01.2007, 21:06)
"Sieghard Schicktanz" <Sieghard> schrieb im Newsbeitrag
news:hard
> BTW: "makeactive" arbeitet dynamisch, es führt den Eintrag erst aus, wenn
> es _aufgerufen_ wird. Vor dem ersten Aufruf passiert an der Partition
> _garnichts_.
> Der "chainloader" zieht einfach eine Anzahl Blöcke von der (hier durch das
> "+1" angegebenen) Position hinter dem Boot-Sektor (hier der MBR) in den
> Speicher und führt die anschließend zum Starten des Betriebssystems aus.
> (Nur weil Du schreibst 'Den Sinn des "chainloader" habe ich nicht
> erfasst'.)


Sieghard,

Vielen Dank für die wertvollen Information. Ich lerne gerade dazu, und dann
fühle ich mich wohl. Zumindestens bootet mein Linux jetzt, die ausgiebige
Exploration folgt noch.

Gruß,
Helge
Juergen Ilse (06.01.2007, 22:56)
Hallo,

Helge Kruse <Helge.Kruse-nospam> wrote:
[ gentoo ]
> Bei der Installation habe ich gnome und x11-xorg als Option angegeben.
> Leider klappt es mit nicht mit dem X11 starten. Der erste Fehler lautet
> (EE) Unable to locate/open config file
> Ich kann kein Programm xconfig oder xsetup finden um eine config zu
> erstellen. Hätte auch erwartet eine default Datei vorzufinden. Wie kann ich
> hier jetzt vorgehen?


Eine Datei erstellen, z.B. mit "X -configure", diese dann (nach ggfs.
eigenen Anpassungen, sofern erwuenscht) an die richtige Stelle kopieren
(vermutlich /etc/X11/xorg.conf) und es dann nochmal probieren.

Tschuess,
Juergen Ilse (juergen)
Alfred Wegener (06.01.2007, 23:14)
Juergen Ilse schrieb:
> Hallo,
> Helge Kruse <Helge.Kruse-nospam> wrote:
> [ gentoo ]
> Eine Datei erstellen, z.B. mit "X -configure", diese dann (nach ggfs.
> eigenen Anpassungen, sofern erwuenscht) an die richtige Stelle kopieren
> (vermutlich /etc/X11/xorg.conf) und es dann nochmal probieren.


Hat der Dussel Alfred was anderes gesagt? Was veranlasste Eure Hoheit
jenes, noch einmal bekanntes zu erwähnen?

Ähnliche Themen