kernel 2.6.11.7 kann Festplatte nicht mounten

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
ponguin
Beiträge: 13
Registriert: 01.05.2004 12:25:28

kernel 2.6.11.7 kann Festplatte nicht mounten

Beitrag von ponguin » 15.04.2005 22:24:31

Hallo zusammen,

ich habe vor kurzem Debian Sarge mit dem Kernel 2.4.27-2-386 installiert. Mit dieser Standartkonfiguration funktioniert alles bestens.

Jetzt habe ich den neuen Kernel 2.6.11 kompiliert und zum starten bekommen. Will ich nun mit dem 2.6er booten, erhalte ich beim Bootvorgang folgenden Fehler:


VFS: Cannot open root device "hda5" or unknown-block (0,0)

Please append a correct "root=" boot option

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block (0,0)


Zum booten benutze ich Grub. Meine Grub Menu.lst sieht im Moment so aus:

## ## End Default Options ##

title Debian GNU/Linux, kernel 2.4.27-2-386
root (hd0,0)
kernel /vmlinuz-2.4.27-2-386 root=/dev/hda5 ro
initrd /initrd.img-2.4.27-2-386
savedefault
boot

title Debian GNU/Linux, kernel 2.4.27-2-386 (recovery mode)
root (hd0,0)
kernel /vmlinuz-2.4.27-2-386 root=/dev/hda5 ro single
initrd /initrd.img-2.4.27-2-386
savedefault
boot

title Debian GNU/Linux, kernel 2.6.11.7
root (hd0,0)
kernel /vmlinuz-2.6.11.7 root=/dev/hda5 ro
# initrd /initrd.img-2.4.27-2-386
savedefault
boot

################################

Den Teil für den 2.6er Kernel habe ich einfach von dem 2.4er übernommen. Da klappt alles einwandfrei.

Mein /boot Verzeichnis mit den Kerneln ist eine primäre Partition auf hda (hda1). Das / Verzeichnis liegt auf hda5. hda5 liegt in einer erweiterten DOS-Partition.


Vielleicht hilft das und jemand kann mir weiterhelfen.

Schonmal Danke.

Benutzeravatar
SubOptimal
Beiträge: 1709
Registriert: 10.01.2005 23:25:46
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: bei Frankfurt

Beitrag von SubOptimal » 16.04.2005 11:21:03

Hi ponguin,

wie ist denn hda5 formatiert? Vielleicht fehlt die Unterstützung für das Filesystem im 2.6er Kernel?

SubOptimal

Harel
Beiträge: 9
Registriert: 10.04.2005 15:32:06

Beitrag von Harel » 16.04.2005 22:43:22

Ich kenne diese Fehlermeldung nur im folgenden Zusammenhang:
Der IDE Kontroller wurde als Modul (oder gar nicht) eingebunden oder das Dateisystem deiner root-Partition wurde als Modul(oder gar nicht) eingebunden.

1. Lösung - eine "initrd" Datei erstellen (habe nicht wirklich die Ahnung, wie das geht, ich glaube das könnte relativ umständlich werden)

2. Lösung - du musst bei der Konfiguration des Kernels alles fest einbinden, was du zum booten des Systems brauchst, also den IDE-Controller, die Unterstützung für das Dateisystem deiner root Partition (es ist wohl ext3), das sollte meines bescheidenen wissens nach reichen, wenn du dein System einfach von der Festplatte lädst (jemand möge mich korregieren, wenn ich falsch liege).

Evtl. musst du einige male den Kernel konfigurieren und kompilieren bis du richtige Einstellungen findest, ich habe ihn schon wahrscheinlich 15 mal kompiliert und bin immer noch nicht ganz zufrieden.

PS: Vergiß nicht "make clean" und "lilo" auszuführen...

Benutzeravatar
armin
Beiträge: 2682
Registriert: 17.03.2005 11:49:14

Beitrag von armin » 16.04.2005 23:24:52

Harel hat geschrieben:PS: Vergiß nicht "make clean" und "lilo" auszuführen...
Nunja, er benutzt Grub. Ich würde dir, falls du es nicht machst, das Kernelbauen auf Debianart http://www.debianforum.de/wiki/?page=Ke ... stem+bauen
empfehlen - dann passiert die Aktualisierung automatisch.
"make clean" wird dann zu "make-kpkg clean".
Ansonsten ist das Problem wohl durch obige Beschreibung zu lösen.

Bye
Trigger

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 16.04.2005 23:40:34

Harel hat geschrieben:
1. Lösung - eine "initrd" Datei erstellen (habe nicht wirklich die Ahnung, wie das geht, ich glaube das könnte relativ umständlich werden)
Was soll da umständlich sein?

Code: Alles auswählen

 mkinitrd -o Augabedatei kernelversion
Zuletzt geändert von KBDCALLS am 17.04.2005 11:26:02, insgesamt 1-mal geändert.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
armin
Beiträge: 2682
Registriert: 17.03.2005 11:49:14

Beitrag von armin » 17.04.2005 00:22:33

Oder halt
"make-kpkg --revision=custom.1.0 --initrd kernel_image"

Harel
Beiträge: 9
Registriert: 10.04.2005 15:32:06

Beitrag von Harel » 17.04.2005 01:29:18

KBDCALLS hat geschrieben:
Was soll da umstaändlich sein?

Code: Alles auswählen

 mkinitrd -o Augabedatei kernelversion[code][/quote]

Ich weiß es auch nicht, zum Teil funktionieren die Sachen nicht, wie sie sollen bzw. wie es in den Anleitungen steht, bei mir hat die obige Operation nichts bewirkt, keine Fehlermeldung, es wurde keine Datei erstellt nichts. Ich habe irgendwo ein Zitat gelesen: "Linux ist benutzerfreundlich, es sucht seine Freunde nur genau aus" oder so  und ich glaube das stimmt. Die Linuxvielfalt hat aus dem Chaos dem Betriebssystem einen Verstand verliehen, der sich hin und wieder den Spaß erlaubt den Benutzer zu quälen... Aber ich schweife ab....

fuzzy
Beiträge: 1021
Registriert: 04.10.2003 12:15:52

Beitrag von fuzzy » 17.04.2005 06:26:38

Hallo ponguin,
klappt das booten mit dieser "/boot/grub/menu.lst"? Eventuell musst Du die genauen Einstellungen noch anpassen.

Code: Alles auswählen

title       Debian GNU/Linux, kernel 2.6.11.7 
root       (hd0,4)
kernel   (hd0,0)/vmlinuz-2.6.11.7 root=/dev/hda5 ro
# initrd  (hd0,0)/initrd.img-2.6.11.7
Sofern Deine Partitionen noch aktuell sind...
"/dev/hda1" -> /boot # dieses entspricht unter Grub (hd0,0)
"/dev/hda5" -> / # dieses entspricht unter Grub (hd0,4)

Gruß fuzzy

[edit]
ich vermute, bei dem 2.4.27-XX sind symbolisch Links passend zu dem System, mit dem neuen Kernel geht das im Moment schief. Daher meine Idee...
[edit]

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 17.04.2005 11:34:44

Harel hat geschrieben:
KBDCALLS hat geschrieben:
Was soll da umständlich sein?

Code: Alles auswählen

 mkinitrd -o Augabedatei kernelversion
Ich weiß es auch nicht, zum Teil funktionieren die Sachen nicht, wie sie sollen bzw. wie es in den Anleitungen steht, bei mir hat die obige Operation nichts bewirkt, keine Fehlermeldung, es wurde keine Datei erstellt nichts. Ich habe irgendwo ein Zitat gelesen: "Linux ist benutzerfreundlich, es sucht seine Freunde nur genau aus" oder so und ich glaube das stimmt. Die Linuxvielfalt hat aus dem Chaos dem Betriebssystem einen Verstand verliehen, der sich hin und wieder den Spaß erlaubt den Benutzer zu quälen... Aber ich schweife ab....[/quote]

Es könnte natürlich sein das du eine defekte Version erwischt hast
Mann könnte ja mit das Temporäre Direktory auf bestehen lassen , und dann mit mkcramfs die Intrd packen.
.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

ponguin
Beiträge: 13
Registriert: 01.05.2004 12:25:28

Beitrag von ponguin » 17.04.2005 18:21:18

Manmanman, das sind ja mehr Antworten als ich erwartet habe. :lol: Also erstmal danke an Euch alle.

Jetzt habe ich es erst mal geschafft das der Kernel läuft. Ich habe einige Module fest in den Kernel kompiliert (FS, IDE Kontroller, Auto Mounter) und eine initrd erstellt. Kann daher leider nicht genau sagen was es nun war. Aber mit Sicherheit lag es daran das ein Modul nicht benutzt werden konnte weil es nicht geladen war.

Das Filesystem von hda5 ist übrigens ext3.

Wie gesagt habe ich eine initrd erstellt aber was genau macht die eigentlich?? :oops:

Brauche ich damit bestimmte Module nicht direkt in den Kernel einkompilieren und einfach als Module, die nachgeladen werden könne, belassen?

Jetzt hab ich allerdings ein Problem mit gdm und kdm. Habe in einer Default Datei von kdm auf gdm umgestellt (Dateinamen vergessen). Jetzt hab ich alle Änderungen rückgängig gemacht aber immer noch wird weder der eine noch der andere geladen. Keine Ahnung ob das an dem neuen Kernel liegt. Aber das ist ein anderes Tehma und wohl eher Stoff für ein anderes Forum. Werde wohl zum xten mal alles neu installieren.
Zuletzt geändert von ponguin am 17.04.2005 18:37:47, insgesamt 1-mal geändert.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 17.04.2005 18:33:39

Wenn alle benötigtigten Treiber/Module fest im Kernel sind wird keine Initrd gebraucht. Sie wird bei einem fast vollständigen modularisierten Kernel gebraucht, wie es die Debiankernel sind, (auch fast alle anderen Distributionskernels) um den Kernel in die Lage zu versetzen die benötigten Module zu laden. Der Kernel ohne Module , IDE , Dateisystem oder auch SCSI, kann so mit deiner Festplatte nichts anfangen.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Antworten