Sie sind nicht angemeldet.

1

09.05.2010, 12:41

Grub findet meinen Kernel nicht :,-(

Hallo liebe GentooGemeinde,

ich habe es endlich geschafft Gentoo neuzuinstallieren. Mit Chroot und live CD funktioniert es soweit auch ganz gut :-/
Aber wenn ich ohne liveCD neuboote sagt er mir:

Quellcode

1
2
3
4
5
root (hd0,5)
 FileSystem type is ext2fs, partition type 0x83
kernel /boot/kernel-2.6.32-gentoo-r7 root=/dev/sda6

Error 15: File not found

Installiert habe ich Grub (0.97) mit:

Quellcode

1
grub-install --no-floppy --root-directory=/boot /dev/sda

es ist ein selbstgebackener Kernel und die grub.conf stimmt mit der Fehlermeldung überein

meine partitionen

Quellcode

1
2
3
4
5
/dev/sda1   => FreeDos 
/dev/sda2   => Windows
/dev/sda3   => /boot [ext2]
/dev/sda5   => SWAP
/dev/sda6   => / (root) [ext3]


so hier nochmal meine Grub.conf:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
default 0
timeout 30

title Gentoo Linux
root (hd0,5)
kernel /boot/kernel-2.6.32-gentoo-r7 root=/dev/sda6

title Windows
rootnoverify (hd0,1)
chainloader +1

title FreeDos
rootnoverify (hd0,0)
chainloader +1


Windows & FreeDos starten wie gewünscht, aber bei Gentoo scheine ich einen Denkfehler zu haben (error 15)
Der kernel ist richtig geschireben und ist unter ' /boot/kernel-2.6.32-gentoo-r7 ' gespeichert (sda3)

Vielleicht sehe ich den Wald vor lauter bäumen nicht :-(
Ich hoffe ihr könnt mir helfen


Grüsse


:-) EDIT: Gelöst, danke: es muss hd(0,2) statt hd(0,5) eingetragen werden

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Ionmed« (10.05.2010, 13:14)


2

09.05.2010, 12:50

Wenn für Grub das --root-directory=/boot ist, so ist der Pfad zum Kernel aus der Grub Sicht "/kernel-2.6.32-gentoo-r7"

Dies wird öfter nicht bedacht. Daher gibt es normalerweise auch ein Symlink so dass "/boot/kernel-2.6.32-gentoo-r7" aus der Grub Sicht doch errechbar ist.

Quellcode

1
2
3
4
5
#ls -l /boot/boot
lrwxrwxrwx 1 root root 1 13. Dez 2008  /boot/boot -> .

# ls -l /boot/boot/kernel-genkernel-x86_64-2.6.32-gentoo-r7 
-rw-r--r-- 1 root root 1742240 30. Apr 18:25 /boot/boot/kernel-genkernel-x86_64-2.6.32-gentoo-r7

Ist bei Dir der Symlink /boot/boot noch vorhanden?
An sonsten, nimm "/boot" aus dem Pfad raus.
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

3

09.05.2010, 12:56

Moin moin, müsste es nicht

Quellcode

1
2
root (hd0,2)
kernel /boot/kerneldatei root=/dev/sda6

sein?

Weil Dein dein boot ja sda3 ist? quasi 3-1 (weil programmier ab 0 zählen) macht 2. Partition also hd0,2

grüsse
Aus dem Grundgesetz[§ 5 (1)]:
Jeder hat das Recht, seine Meinung in Wort, Schrift und Bild frei zu äußern und zu verbreiten und sich aus allgemein zugänglichen Quellen ungehindert zu unterrichten.
. . .
Eine Zensur findet nicht statt.

4

09.05.2010, 16:01

/dev/sda1 => FreeDos = 0,0
/dev/sda2 => Windows = 0,1
/dev/sda3 => /boot [ext2] = 0,2
/dev/sda5 => SWAP = 0,3
/dev/sda6 => / (root) [ext3] = 0,4

fällt Dir da was auf?

Du hast "root (hd0,5)", die ist aber nicht vorhanden!
Ullrich Andreas
Meine Konfiguration:
x86_64/Gentoo-13/gcc Version 4.6.3/KDE-Version 4.12.5/Kernel version 3.7.10
Graphic: 2x Nvidia 9600-GT OC SLI,Drucker: Samsung CLP-315W

5

09.05.2010, 16:41

Nana...
"root (hd0,5)" ist hier immer noch sda6 ! ;)

Ich denke die Lösung wurde schon von butzel genannt.

Für GRUB ist "root" immer da wo das zu startende Kernel Image liegt,
und das ist hier auf der /boot Partition
/dev/sda3 => /boot [ext2]
also für GRUB =
root (hd0,2)

6

09.05.2010, 17:31

oh, sorry

hab ganz übersehen, das /dev/sda4 fehlt!
Da habe ich falsche Antwort gegeben!
Ullrich Andreas
Meine Konfiguration:
x86_64/Gentoo-13/gcc Version 4.6.3/KDE-Version 4.12.5/Kernel version 3.7.10
Graphic: 2x Nvidia 9600-GT OC SLI,Drucker: Samsung CLP-315W

7

09.05.2010, 18:05

@andreasullrich

Hehe, Null Problem
Die unterschiedliche Benennung bzw Zählweise zwischen GRUB und dem System
sda1 = für GRUB (hd0,0)
hat schon so manchen verwirrt... ;)
IdR macht man so eine Konfiguration ja auch nur selten...
also nix für ungut...

/edit: Beachte dass das in GRUB2 noch wieder anders ist... !

8

09.05.2010, 21:03

Nana...
"root (hd0,5)" ist hier immer noch sda6 ! ;)

Ich denke die Lösung wurde schon von butzel genannt.

Für GRUB ist "root" immer da wo das zu startende Kernel Image liegt,
und das ist hier auf der /boot Partition
/dev/sda3 => /boot [ext2]
also für GRUB =
root (hd0,2)


Full ACK!
Ich hatte übrigens nicht viel Zeit (Muttertag) deswg. nur die "kurzfassung" :-)

Es ist aber auch schon ein bissl verwirrend:
a) das root nicht => / <root> ist.
b) seine eingabe mit /boot/kernel... über einen link wieder in die wurzel der boot-partition zeigt. (sonst hätte bell rechtgehabt) ;)
c) das grub mit 0,0 anfängt (als programmierer logisch :-) )


(so ich darf jetzt noch runter zu meinem Nachbarn, der will sein linux neuinstallieren [Ubuntu - AutoUpdate ist fehlgeschlagen] ~:-| )



aber wäre nett, wenn der TS mitteilt ob es funktioniert...
Aus dem Grundgesetz[§ 5 (1)]:
Jeder hat das Recht, seine Meinung in Wort, Schrift und Bild frei zu äußern und zu verbreiten und sich aus allgemein zugänglichen Quellen ungehindert zu unterrichten.
. . .
Eine Zensur findet nicht statt.

9

10.05.2010, 00:23

Normaler Weise halte ich mich aus solchen Threads raus, aber diesmal hab ich was zu sagen:

/dev/sda4 ist immer vorhanden, da das der Container für die erweiterten Partitionen ist. Man kann nämlich nur 4 primäre Partitionen haben, und das (/dev/sda4) ist in dem Fall der Container für /dev/sda5 & /dev/sda6. Unter Linux & >= Win7 kann auch aus den erweiterten Partitionen >= /dev/sda5 gebootet werden. Derher ist die Aufzählung wie folgt:

/dev/sda1 (hd0,0)
/dev/sda2 (hd(0,1)
/dev/sda3 (hd(0,2)
/dev/sda4 (erweiterte Partition für die folgenden Partitionen | edit: oder letzte primäre Partition) (hd0,3)
/dev/sda5 (hd0,4)
/dev/sda6 (hd0,5)

Das Ganze ändert natürlich nix daran, dass /dev/sda3 [/boot (ext2)] immernoch (hd 0,2) in grub ergibt !!!

edit:
root=/dev/sda6 ist natürlich auch richtig ( in diesem Fall).

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »FelixPetzold« (10.05.2010, 00:34)


10

10.05.2010, 10:23

Hallo,

vielen Dank für eure Hilfe*, ich hätte nicht mit einer so fixen Antwort gerechnet*

mit

Quellcode

1
2
3
4
5
6
 default 0
timeout 30

title Gentoo Linux
root (hd0,2)
kernel /boot/kernel-2.6.32-gentoo-r7 root=/dev/sda6

funktioniert es jetzt wunderbar
Ich dachte halt man muss die ROOT-(/) -Partition angeben (schliesslich wird ja auch /boot/kernel-2.6.32.gentoo-r7 angegeben)
Aber jetzt kann ich das /boot auch weglassen - funktioniert genauso - wie butzel geschrieben hat

Jetzt mache ich mich an KDE & GNOME (compiliert gerade)

Aber eine frage habe ich noch:
laut Installationsdoku wird bei windows gesagt, ich solle die "makeactive" über "chainloader" schreiben. Wenn ich das allerdings mache, dann startet zwar mein XP aber beim nächsten mal ist grub wech... (ist das ein fehler in der Doku - weil ohne klappt es ja wunder bar)

Danke

ionMed

*) es stimmt doch, dass Gentoo die hilfsbereiteste u. kompetente Community hat
bei ubuntu hätte ich jetzt wieder in dutzend tipps welche es schlimmer machen gehabt

edith: hd(0,5)=>hd(0,2)

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Ionmed« (10.05.2010, 13:04)


11

10.05.2010, 11:25

Hast du einen Tippfehler in der (neuen) grub.conf ? , ich sehe da keinen unterschied zur vorigen...?!

Aber eine frage habe ich noch:
laut Installationsdoku wird bei windows gesagt, ich solle die "makeactive" über "chainloader" schreiben. Wenn ich das allerdings mache, dann startet zwar mein XP aber beim nächsten mal ist grub wech... (ist das ein fehler in der Doku - weil ohne klappt es ja wunder bar)
Was meinst du genau mit "ist grub wech.."
Von Windows deinstalliert?
oder..?

Es gibt auch einige (böse) Windows Programme die nahezu ungefragt den MBR wieder (Windows konform) manipulieren.
Wenn es aber ohne "makeactive" korrekt klappt dann lasse es am besten so.
Amsonsten wäre es hilfreich wenn du noch mal genau nennen könntest welche Partitionen Aktiv gesetzt sind (Boot Flag) , sollte zb in der

Quellcode

1
# fdisk -l /dev/sda
(kleines L) Ausgabe ersichtlich sein.

12

10.05.2010, 11:48

Zitat

dann startet zwar mein XP aber beim nächsten mal ist grub wech..
Ich habe gerade in die Doku reingeschaut. Kann es sein, dass Du Grub nicht in das MBR, sondern auf die boot oder root Partition /dev/sda[36] installiert und diese als Aktiv in der Partitionstabelle markiert hast?
"makeactive" setzt die Windows Partition auf Aktiv. Und schon läuft der Boot Prozess beim nächsten mal nicht mehr in Grub sondern in den Windows Boot-Loader.
Installiere Grub besser direkt in den MBR (/dev/sda).
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

13

10.05.2010, 13:10

@josef
sry, copy'paste fehler (tippe immer alles in forum ab)

sda3 ist activ * geflaggt

nach einem windows start (mit makeactive) ist dann wieder sda2 aktiv geflagt und winXP hat ja seinen eigenen Bootloader, welcher dann wieder aktiv ist :-(

Grub habe ich mit

Quellcode

1
grub-install --no-floppy --root-directory=/boot /dev/sda

installiert

14

10.05.2010, 15:00

Seltsames Windows ... :huh:

Kannst du mal den Inhalt von /boot/grub/menu.lst posten sowie vlt. die Ausgabe von

Quellcode

1
# fdisk -l
Vielleicht ist ja doch was drinnen was nicht ganz rein passt ...
http://www.dyle.org
IM-Account (Jabber!) sind auf meiner HP ...
There is no place like /home

http://www.gentooforum.de
http://www.gentoofreunde.org

<div>how to annoy a web developer?</span>

15

10.05.2010, 16:56

Also, bei mir ist seit dem ersten Windows-Start die Win-Festplatte die aktive. Grub braucht das nicht. Der bootet sogar von nem Stück Pappe, wenn der das irgendwie lesen kann. Das ist also nicht weiter tragisch.

So boote ich mein Windows. Vergleich das mal mit deinen Einstellungen

Quellcode

1
2
3
4
title 		Windows 7 Professional
rootnoverify 	(hd0,2)
makeactive
chainloader 	+1