# SCSI, KERNEL, GENTOO BUG?

## root_tux_linux

Hi Leute habe ein mega Problem und hoffe das ihr mir helfen könnt...

Bin kürzlich von Redhat/Fedora auf Gentoo umgestiegen die installation usw ging gut... da ich keinen bock hatte nen Kernel selbst zu konfigurieren/kompilieren benutzte ich genkernel was auch wunderbar klappte bis auf das ich keinen Sound etc.. hab  :Smile: 

Jetzt mein Problem: Sobald ich einen Kernel selbst kompiliere oder mit genkernel --config, kann ich diesen nicht benutzen da beim booten eine Fehlermeldung (Siehe unten) erscheint.

kmod: failed to exec /sbin/modprobe -s -k block-major-8, erron = 2

VFS: Cannot open root device "/dev/sda3" or 08:03

Please append a correct "root=" boot option

Kernel panic: VFS: Unable to mount root fs on 08:03

Kernel kompiliert hab ich schon unter Redhat, Fedora, Suse, Mandrake und Debian und die liefen immer nur unter Gentoo lauft kein selbst kompilierter Kernel  aber auch nur auf dem Rechner der SCSI hat...

Die grub.conf ist auch korrekt:

default 0

timeout 5

splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Linux Gentoo 1.4 Rockz (Genkernel)

root (hd0,0)

kernel (hd0,0)/boot/kernel-2.4.23 root=/dev/sda3

initrd (hd0,0)/boot/initrd-2.4.23

title=Linux Gentoo 1.4 Rockz (Selfmade)

root (hd0,0)

kernel (hd0,0)/boot/bzImage root=/dev/sda3

Weiss einer an was der Fehler liegen könnte und wie ich ihn behebe?

PS. Fall einer frag wie ich kompiliere:

cd /usr/src/linux

make mrproper

make menuconfig

---> Normal konfigureiren oder mit Kernel-Configfile (und alles aktivieren was Gentoo braucht laut Anleitung)

Save

make dep && make clean && make bzImage && make modules && make modules_install

cp /arch/i386/boot/bzImage /boot

----------

## Beforegod

SCSI Treiber fest im Kernel drinnen?

----------

## at_chaos

 *root_tux_linux wrote:*   

> 
> 
> PS. Fall einer frag wie ich kompiliere:
> 
> cd /usr/src/linux
> ...

 

hoffe du hast das 

```
mount /boot
```

 nicht vergessen bevor du 

```
cp /arch/i386/boot/bzImage /boot
```

ich habe vorher auch immer mit genkernel kompiliert und als ich das ganze von hand gemacht habe ist bei mir auch nicht viel mehr als kernel panic rausgekommen... nach entfernen von genkernel hat es funktioniert.. kann aber nicht sagen ob es am genkernel oder an meiner config gelegen hat  :Wink: 

----------

## root_tux_linux

Also die Treiber sind als Build_In (*) drin und es geht net  :Sad: 

*rofl* Neine /boot hab ich nich vergessen zu mounten da ich  noauto garnicht in der fstab drin hab  :Wink: 

Ich bin jetzt mittlerweile bei Versuch 7 und nix geht grrrrrrrr hab sogar im Inoffiziellen gentoo-forum von gentoo.de gelesen das noch einige andere User  dieses Problem haben egal welche HW und egal welcher Kernel  :Sad: 

Ps. Ich versuch mal den Tipp mit Genkernel deinstallieren

----------

## RealGeizt

habe auch scsi und mit grub habe ich mein system noch nie booten können.

grub kapiert das nicht so mit scsi platten hab ich das gefühl.

probiers mit lilo...ist doch bloss ein bootloader...

----------

## root_tux_linux

Ehrlich gesagt bezweifel ich stark das es an Grub liegt da alle anderen Distrubtionen die ich getestet hab  funzen und  ein Kernel der von Genkernel erstellt wurde funzt ja auch, also wärs es doch paradox wenn es an Grub liegen würde...

Ich hab jetzt mal die Platte geLow-Levelt und hau nochmal Gentoo 1.4 drauf aber diesmal von Anfang an mit einem selbst kompilierten Kernel, falls es dann noch immer nicht geht  und keiner nen Rat weiss muss ich wohl auf Gentoo verzichten  :Sad: 

----------

## at_chaos

omg.. LL-formatierung inklusive komplette neuinstallation wäre da nicht notwendig gewesen, IMHO

damit du die richtigen optionen im kernel hast kannst du ja die .config von der live-cd übernehmen. da sind dann schon alle wichtigen optionen ausgewählt bzw. kannst du in der /etc/modules.autoload.d/kernel-2.4 nachsehen welche module geladen werden.

wie das funktioniert steht hier im forum (ich kann es jetzt nicht so auf anhib genau erklären   :Embarassed:  )

jedenfalls empfehle ich dir nur die wichtigsten sachen in den kernel zu kompilieren.. habe beim compilieren vom 2.6 alle optionen ausgewählt die ich brauchen "könnte" ergebnis war dann kernel panic ... von da an habe ich mal mit den wichtigsten optionen begonnen und wenn etwas nicht funktioniert hat die fehlenden optionen bzw. module hinzugefügt

maybe it helps

----------

## root_tux_linux

Werd ich machen  :Smile: 

Danke für eure mühe  :Smile: 

Naja aber irgendwie ist schon ne schwachleistung (nicht böse gemeint) wenn Gentoo gleich austickt nur weil man  einen bissel grösseren Kernel hat

Bei den oben genannten Distrubtionen  konnte ich alles Built in oder Modul wählen also wirklich alles und es lief sogar mit der  2.6.0  :Wink: 

Naja aber von der performance her ist gentoo einfach arsch geil und von portage her ^^

----------

## at_chaos

ich glaube es liegt nicht an gentoo sondern an den kerneloptionen. Man muss sich wirklich Zeit nehmen und bei unklarheiten die ganzen helpfiles durchlesen. 

Bei meinen anfänglichen kompilier-versuchen wollte ich auch nach dem 5ten fehlversuch einen psychiater aufsuchen. Letztendlich hat es doch geklappt  :Wink: 

----------

## root_tux_linux

öhm lies mal ganz ganz oben  :Wink: 

Ich benutz schon "lange" Linux und hab auch schon mehrere Kernel kompiliert für jeden meiner Rechner/Notebook und bei verschiedenen Distrubtionen und die funzten  immer nur Gentoo streikt... Also von daher geh ich aus das es an Gentoo liegt und auch weil eben im Forum vom gentoo.de  mehrere User gepostet haben das Gentoo ihren Kernel nicht fressen egal ob SCSI oder IDE und kann nicht sein dass das alles Noobs im Kernel Kompilieren sind  :Smile: 

Naja und auch wenn es wird ja nicht mal ein Kernel von Genkernel angenommen  wenn ich mit der Option genkernel --config eine einzige einstellung veränder z.B. Support für NTFS dann streikt wieder gentoo

Ich hab  bis jetzt auch noch nie erlebt das sich ein Linux nicht installieren lässt ausser bei Gentoo das hängt sich z.B. auf meinem Notebook auf sobald es  FIREWIRE entdeckt, aber laut den Doc's lässt sich Firewire expliziet nicht deaktivieren ist auch so ne sach  :Sad:  Ja klar kann ich jetzt mit Knoppix machen aber ich hoff du  verstehst was ich meine!?!?

----------

## at_chaos

hehe... okok hab schon verstanden  :Wink: 

ich bin auf linux noch nicht so fit doch ich muss sagen dass ich mit gentoo sehr zufrieden bin wohl auch weil es keine unlösbaren probleme gegeben hat.

Ich hoffe hier schaun mal ein paar von denen rein die mehr ahnung haben als ich  :Wink:  ...

so far..

----------

## Peng

Ins blaue geraten: Lass einen Kernel mit genkernel bauen, nimm die Konfiguration, die dieser Kernel hat (/proc/config afair) und dann weiter von Hand.

Ich könnte mir gut vorstellen, dass man einige Sachen bezüglich SATA nur als Modul kriegt und deswegen bei genkernel und livecd ne initrd benutzt wird. Das findest du aber nur auf dem oben beschriebenen Weg raus.

Weiterhin würde ich mir mit dmesg ansehen, wann und mit welchen Modulen dein richtiges root /dev/sda3 gemountet wird und dann da weitermachen.

Und man kann die von genkernel gebaute initrd mal perr loopback mounten und sehn, welche Module da drinstecken..

Viel Erfolg.

----------

## thomasmue

Hi,

meiner Meinung nach lieht das Problem in der Grub Konfig. Grub hat eine gewöhnungsbedürftige Syntax, was die Laufwerksbezeichnungen angeht.

Wenn /dev/sda3 deine /root ist, heisst das in Grub (hd0,2).

Versuch mall in Deiner Grub Konfig:

root (hd0,2)

boot (hd0,0)/boot/kernel-2.4.23

initrd (hd0,0)/boot/initrd-2.4.23

damit sollte es gehen.

Gruß

Thomas

----------

## ruth

hi,

diese zeile:

```

kmod: failed to exec /sbin/modprobe -s -k block-major-8, erron = 2 

```

bedeutet, dass du in dieser konfiguration keine scsi-lw's im kern hast.

er versucht deshalb, das modul nachzuladen.

da es jedoch auf sda3 liegt, und dieses nicht erreicht werden kann hast du ein problem.

hier könnte zumindest ein

```

alias block-major-8 sd_mod

```

fehlen, so das nicht / darstellt.

da du ganz oben ja mit einer initrd arbeitest, sollte diese die gewünschte funktion schon

bereitstellen.

würde sie wahrscheinlich auch... aber deine grub syntax ist falsch:

```

root (hd0,0) 

```

das verweist auf die erste partition der ersten platte, ist also ok, denke ich

```

kernel (hd0,0)/boot/kernel-2.4.23 root=/dev/sda3 

```

hier gehts schon los:

im laufenden system ist deine erste part. unter /boot eingebunden.

grub kennt diesen mountpoint doch nicht; wie sollte er auch???

also:

```

kernel /kernel-2.4.23 root=/dev/sda3

```

schliesslich liegt der kern unter / der partition selbst; stimmst du mir da zu?

initrd analog...  :Wink: 

ich geh davon aus, dass der kern initrd nicht findet und damit auch sd_mod nicht laden kann.

wenn dann mal die initrd gefunden wird, wird der kern auch sd_mod laden und dein

rootfs montieren.

wie gesagt:

grub kennt von /boot/[blah] zur bootzeit nix. /boot ist ja nur der mountpoint im system selbst.

auf der partition liegt der kern unter /

hoffe, damit ist das geklärt.

gruss

rootshell

----------

## Peng

Das mit dem /boot haben die Gentoo-Jungs auch schon gelöst. Es gibt im normalen Betrieb ein Link /boot/boot -> /boot, was dazu führt, dass es egal ist, ob mal /boot/bzImage oder /bzImage schreibt.

Du hast aber insofern recht, als das der Kernel (der ja gefunden wird) keinen scsi-treiber kennt und auch keiner im initrd steckt. Möglicherweise allerdings auch das /sbin/modprobe fehlt, weiss ich aber nicht.

Die Lösung ist imho, die initrd von genkernel durchzusehen und entweder die entsprechenden Module ebenfalls zu benutzen oder wirklich nochmal zu schaun, ob alle Sachen im Kernel stecken.[/code]

----------

