PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kernel Kompilierung - beim ReiserFS hängt es



Mr.Lugosi
26.12.02, 18:46
Hallo und frohe Weihnachten,

um einen neuen Treiber kompilieren zu können, brauchte ich die Original Kernel Sources - die SuSE Teile gingen nicht. Ich habe mich dann an ein Anleitung gehalten und die Sache auch so gemacht. Jetzt bootet mein System nicht mehr und bleibt mit einer kernel panic hängen:
:(

VFS: Mounted root (ext2 filesystem)
Loading module reiserfs
insmod: reiserfs: no module by that name found
fatfs: bogus logical sector size 5376
fatfs: bogus logical sector size 5376
kernel panic: VFS_ Unable to mount root fs on 03:01 Wie komme ich jetzt wieder an mein System. Wer kann mir helfen die alte Konfiguration wieder anzupassen. Der alte Kernel ist noch unter /usr/src/ vorhanden - habe den softlink nur umbenannt und dann in ./linux den neuen gesetzt.

Der Thread (http://vdrportal.de/board/thread.php?sid=&postid=4275) dazu lief in einem anderen Forum.

Bitte - wer kann mir helfen?

Ciao & Frohe Weihnachten noch!

zander
26.12.02, 19:34
Möglicherweise versucht das System, das Modul von einer ramdisk (initrd) zu laden. Das einfachste wäre wohl, ReiserFS von vorne herein direkt in den Kernel zu kompilieren.

Mr.Lugosi
04.01.03, 17:06
direkt davor gibt es auch eine Meldung über eine RAMDisk.

Nur jetzt ist die Frage, wie ich erstmal wieder ans System komme und mit einem Kernel booten kann. Ich habe auch leider keine Ahnung, wie ich das ReiserFS dann in den Kernel aufnehme.

Welche Möglichkeiten habe ich, wieder ans System zu kommen?

Rigo
05.01.03, 13:43
hallo!!!

versuch es doch über die Bootdisketten, Modules1, Modules2, Modules3.....
du kannst auch mal versuchen mit der CD1 zu booten, und dann nicht auf installieren zu gehen sondern auf Rescue, System zu reparieren.......
Kernel Panic: unable to mount root fs siehe unten, bedeutet, der Start des Linux- kernel hat geklappt, doch Linux konnte anschließend nicht die Linux-Systempartition finden...
mögliche Abhilfe, beim Linux Start die Richtige Partition angeben, z.b. root=/dev/hdb8 etc...
wenn es so klappt, und falls sich die Namen der Partitionen geändert haben, mußt du noch Die Datei /etc/fstab entsprechend anpassen....;)

__________________________

Es ist alles eine Frage der Zeit!!!:rolleyes: :rolleyes:

Mr.Lugosi
14.01.03, 17:49
Moin,

komme erst jetzt leider wieder dazu (Prüfungsstreß), aber hoffe es jetzt in meinen 2 freien Tagen wieder hinzubekommen (ist schon ******e ohne TV & Video :))

Allerdings komme ich da allein bzw. ohne Hilfe scheinbar nicht nennenswert weiter. Ich habe mich wie gesagt an eine Anleitung aus dem oben genannten Thread gehalten. Jetzt war meine Idee über die Rescue Konsolue zu booten und das Rückgängig zu machen. Hätte damals von den Kernel und Makefilemodifikationen alles Kopien gemacht.

Aber funktioniert das scheinbar nicht so einfach. Ich komme in die Rescue Konsole, aber das ist eine Umgebung die nicht viel mit meinem System gemein hat. Ich finde weder die Kernel Sources noch die meisten anderen Tile nach denen ich gesucht habe.

z.B. gibt es den Pfad /usr/src/ gar nicht.

Logisch - wenn das ReiserFS fehlt, komme ich auch halt nicht wieder drauf. Aber wie rette ich jetzt dieses System und bekomme es wieder lauffähig?

War denn mein Fehler das in der Anleitung nichts vom ReiserFS war, welches ich auch hätte inkompilieren müssen? Oder lag woanders der Fehler? Kann man das jetzt noch nachvollziehen?

Es wäre wirklich klasse, wenn mir jemand helfen könnte. Komme da absolut nicht weiter. :(

Danke

Mr.Lugosi
15.01.03, 12:12
Niemand eine Idee wo ich hier am Besten ansetzen kann? Habe auch keine HowTos o.ä. gefunden, die sich mit meinem Problem beschäftigen. Weiß niemand, wie ich auf Basis der Rescue Konsole mein System wieder funktionsfähig bekomme? Also ich brauche doch im Wesentlichen nur einen Standardtreiber mit ReiserFS über die Konsole hinzufügen.

Ich weiß aber leider nicht wie ich da vorgehen muß? :( Weiß jemand was? Ich würde gern heute abend Buffy aufzeichnen und gucken.
:rolleyes:

HangLoose
15.01.03, 12:32
moin moin

lösungsvorschlag

1. über rescue system booten
2. als root einloggen
3. deine / unter /mnt vom rescue system mounten
mount /dev/hdxy /mnt xy entsprechend deiner / partition anpassen.
4. nach /mnt wechseln => cd /mnt
5. chroot => chroot /mnt /bin/bash
6.alten kernel nach /boot kopieren
7. lilo aufrufen => /sbin/lilo
8. chroot verlassen => exit
9. unmount /dev/hdxy
10. reboot

ich hoffe ich habe nichts vergessen


Gruß HL

Mr.Lugosi
15.01.03, 19:36
Original geschrieben von HangLoose
moin moin
1. über rescue system booten
2. als root einloggen
3. deine / unter /mnt vom rescue system mounten
mount /dev/hdxy /mnt xy entsprechend deiner / partition anpassen.
4. nach /mnt wechseln => cd /mnt
5. chroot => chroot /mnt /bin/bash
6.alten kernel nach /boot kopieren
7. lilo aufrufen => /sbin/lilo
8. chroot verlassen => exit
9. unmount /dev/hdxy
10. reboot

ich hoffe ich habe nichts vergessen Das ist schon klasse. Vielen Dank. Ich habe jetzt mein System wieder gefunden und meinen ursprünglichen Kernel in /usr/src/linux wieder hergestellt. Jetzt bin ich noch unsicher, was ich alles nach /boot kopieren muß, oder was ich in /boot verändern muß damit ich den Kernel wieder korrekt booten kann. wie gesagt in /usr/src/ ist alles wieder so wie vorher...

Schon mal vielen Dank. Das hat mir bisher schon sehr geholfen!:)

Berthold
15.01.03, 19:43
Du musst den neu erzeugten Kernel nach /boot kopieren als vmlinuz, und in /boot eine initrd erzeugen.
Ich hab kein SuSE, könnte aber sein, dass das Kommando mk_initrd heisst.

HangLoose
15.01.03, 21:13
hi

1. möglichkeit

du rufst in der chroot umgebung yast2 auf und installierst den orig. suse kernel

2. möglichkeit

du erstellst dir einen neuen kernel, wo das reiserfs fest in den kernel compiliert ist. kopierst den dann nach /boot zusammen mit der System.map

cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-1
cp /usr/src/linux/System.map /boot/System.map-1

3. möglichkeit

wenn dein selbst compilierter kernel noch unter /boot liegt, wechselst du als root nach /boot und rufst mk_initrd (siehe bertholds posting) auf. damit wird für alle kernel die sich in /boot befinden eine ramdisk (initrd) erzeugt


als letztes mußt du, glaub ich, noch die menu.lst von grub anpassen. von grub hab ich allerdings keine große ahnung.


Gruß HL

Mr.Lugosi
24.01.03, 00:53
Moin,

erstmal vielen Dank an alle, die geholfen haben! Ich habe es mir euren Punkten vorgerstern endlich hinbekommen - knapp 3 Wochen :).

Dennoch muß ich schon wieder ran :rolleyes: - ich bräuchte einen neuen Stanardkernel und nicht das SuSE Modell. Ist es möhlich, wenn ich mir den gleichen Standardkernel schnappe, daß man die gesamten Kernel Konfigurationen des SuSE Kernels irgendwie übernehmen kann und so den neuen Kernel erstellen.

Damit meinte ich dann auch so Dinge, wie ReiderFS und alles was man System zum Botten und Funktionieren braucht und aktuell verwendet. Wer kann mir da helfen? Jemand eine Idee?
:confused:
Ciao & Danke nochmal...

Berthold
24.01.03, 08:57
1) hol dir den kernel, den du compilen willst.

2) entpacken nach /usr/src/linux-version-number

3) ln -s /usr/src/linux-version-number /usr/src/linux
dieser symlink muss gesetzt werden, falls er nicht da ist.

4) die bisherige config-datei nach /usr/src/linux kopieren. als .config.
wo diese datei bei suse liegt, und wie sie heißt, weiß ich allerdings nicht.
es gehen auch andere dateinamen, aber menuconfig zeigt dir als voreinstellung glaubich .config an.

5) dann kannst du mit dem dem üblichen make clean && make mrproper etc.etc. loslegen.
es gibt ein Kommando dafür make oldconfig, für die übernahme der alten parameter, das hab ich aber noch nie verwendet.

6) wenn du das noch nicht gemacht hast, schau doch in das HOWTO hier aus den Foren rein, ist wirklich gut.
damit hab ich jedenfalls den standardkernel 2.4.19 auf mandrake 8.1 compiled gekriegt, no problems.
was da allerdings nicht drinsteht, ist diese sache mit mk_initrd, aber das scheint ja jetzt hingehauen zu haben. du musst das nach dem compile machen.

gruß
berthold

Mr.Lugosi
27.01.03, 11:34
Moin,

ich habe mir jetzt jede Menge dazu durchgelesen und nachdem er eben auch wieder eine Ewigkeit am Kompilieren war, brach er spät bei
make modules modules_install
ab.

make[3]: *** [buz.o] Error 1
make[3]: Leaving directory '/usr/src/linux-2.4.4/drivers/media/video'
make[2]: ***[_modsubdir_video] Error 2
make[2]: Leaving directory '/usr/src/linux-2.4.4/drivers/media'
make[1]: ***[_modsubdir_media] Error 2
make[1]: Leaving directory '/usr/src/linux-2.4.4/drivers
make: *** [_mod_drivers] Error 2


Ich habe mich an die Anleitung von Hubertus Linux / VDR Seite (http://home.t-online.de/home/hubertus.sandmann/l_kernel.htm) gehalten. Nach dieser Anleitung habe ich bereits mein System aufgebaut. Aber auchhier komme ich nicht weiter. Jemand eine Idee wie ich weiterkommen kann?

Danke auf jeden Fall!ü

Berthold
01.02.03, 20:43
du schreibst nicht, welchen kernel du verwendet hast.
ich würde einfach mal versuchen, im menuconfig die video for linux, oder wie immer das heisst, zu deaktivieren.