![](https://seccdn.libravatar.org/avatar/73166db4487cc5490022833f99316e97.jpg?s=120&d=mm&r=g)
Am Die, 17 Sep 2002 schrieb Peter Meyer:
mv /boot/vmlinuz /boot/vmlinz-2.4.10-4GB (altes Image gesichert)
Ist dann evtl. ein 'mk_initrd' fuer diesen Kernel noetig?
Das weiss ich eben auch nicht!!! Ich denke 'mk_initrd' bezieht sich irgendwie auch auf SCSI Controller und ReiserFS. Hab jetzt nochmal die Doku durchgeschaut. Hier muss der Fehler liegen. Siehe unten.
Ja, denke ich auch, bei einem Nicht-SCSI-System wird wohl das Dateisystem der root-Partition nicht fest einkompiliert sein und muß deshalb in eine InitRD (obwohl ich das für ausgemachten Schwachsinn halte, die unterstützten Dateisysteme ext2, ext3 und reiserfs gehören IMHO fest in den Kernel)
Ja, ich sollte wohl mal mehr zur initrd schreiben...
Ja bitte! ;-))
Wie erstelle ich denn eine initrd? Ich dachte ich könnte für mein vmlinuz-2.4.19a auch /boot/initrd nehmen und hab mit 'mk_inird -k "vmlinuz-2.4.19a" -i "initrd"' versucht. Leider erfolglos.
Kein schlechter Ansatz, würde aber -i "initrd-2.4.19a" nehmen
Jetzt konnte ich weder "vmlinuz-2.4.19a" noch "vmlinuz-2.4.10-4GB" starten. Über "failsafe" bin ich wieder rein gekommen und konnte mit 'mk_inird -k "vmlinuz-2.4.10-4GB" -i "initrd"' die ganze Sache rückgängig machen und nun läuft das Original Linux "vmlinuz-2.4.10-4GB" wieder.
Ich habe doch ursprünglich die alte Konfiguration übernommen (zcat /proc/config.gz .config und make oldconfig), d.h. doch auch die gleichen Module und festeingebundenen Treiber wie im Original Kernel. Warum kommt der neue Kernel dann nicht mit der "/boot/initrd" zurecht?
Weil die Module für verschiedene Kernelversionen unterschiedlich sind.
Also wie erstelle ich die passenden initrd?
s.o.
Auch die initrd musst du fuer jeden Kernel erstellen -- besser aber, du laesst die initrd fuer den neuen Kernel ganz weg, d.h. alles zum booten noetige fest in den Kernel und den Rest dann als Modul.
Wei ermittele ich, was alles "noetig" ist für den Kernel?
Zum Booten im Wesentlichen der Treiber das Dateisystems der Root-Partition und die Möglichkeit das entsprechende Gerät(Platte) anzusprechen, das heißt bei SCSI-Systemen auch der Treiber für den SCSI-Controller. Das sind so die kritischen Dinge, die in den SuSE-Standardkerneln als Modul gebaut sind und über initrd geladen werden, die mußt Du fest einkompilieren. Gruß Christoph -- Christoph Maurer - 52072 Aachen - Tux#194235 mailto:christoph-maurer@gmx.de - http://www.christophmaurer.de Auf der Homepage u.a.: Installation von SuSE 7.0 auf Notebook Acer Travelmate 508 T, Elektrotechnik an der RWTH Aachen