wie erstelle ich die initrd fuer meinen kernel?

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Belgarad
Beiträge: 749
Registriert: 12.07.2002 02:00:44

wie erstelle ich die initrd fuer meinen kernel?

Beitrag von Belgarad » 06.08.2002 12:51:03

habe erfolgreich mit make-kpgk meinen kernel erstellt. da es ein 2.4.18 kernel ist, benoetige ich ein initrd (image).
wie erstelle ich das?
(oder ist das "nur" die ramdisk ohne kernel spezifischen inhalt?

Benutzeravatar
feltel
Webmaster
Beiträge: 10452
Registriert: 20.12.2001 13:08:23
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Leipzig, Germany
Kontaktdaten:

Re: wie erstelle ich die initrd fuer meinen kernel?

Beitrag von feltel » 06.08.2002 12:57:44

Belgarad hat geschrieben:habe erfolgreich mit make-kpgk meinen kernel erstellt. da es ein 2.4.18 kernel ist, benoetige ich ein initrd (image).
wie erstelle ich das?
Du brauchst nicht unbedingt eine initrd; dies ist eigentlich nur dazu gut, das Du mit einem Kernel möglichst viele Systeme unterstützen kannst, ohne das der Kernel zu groß wird. Wenn Du doch ne initrd willst, dann erstell Dir eine Datei /etc/kernel-img.conf mit dem ff. Inhalt:

Code: Alles auswählen

do_initrd = yes
Weiterhin musst Du in der Datei /etc/lilo.conf die Zeile "initrd = /boot/initd" reinschreiben.

Belgarad
Beiträge: 749
Registriert: 12.07.2002 02:00:44

Beitrag von Belgarad » 06.08.2002 13:04:24

mir ist noch nicht ganz klar ob die initrd "nur" eine ramdisk ist oder ob das eine ramdisk incl. image ist.
warum?
wenn ich den 2.4.18-686 kernel aus woody installiere, wird auch eine initrd-2.54.18-686 erstellt (und selbiges fuer 2.4.16-686).
und in der lilo.conf existieren dann auch die entsprechenden eintraege...

initrd=/boot/initrd-2.4.18-686

...

initrd=/boot/initrd-2.4.16-686

was mache ich also wenn ich mir selbst einen kernel baue?



Muss ich diese Datei vor oder nach dem kernel-bauen mit make-kpkg erstellen?
/etc/kernel-img.conf

Benutzeravatar
feltel
Webmaster
Beiträge: 10452
Registriert: 20.12.2001 13:08:23
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Leipzig, Germany
Kontaktdaten:

Beitrag von feltel » 06.08.2002 13:11:18

Belgarad hat geschrieben:mir ist noch nicht ganz klar ob die initrd "nur" eine ramdisk ist oder ob das eine ramdisk incl. image ist.
Eine initrd ist eine Ramdisk mit den zum Systemstart unbedingt notwendigen Gerätetreibern (z.B. SCSI-Treiber, Filesystem etc.). Eine initrd hat im prinzip nichts mit einer normalen Ramdisk (eine normale Ramdisk lässt sich übrigens über das Modul ramdisk realisieren) gemeinsam.
wenn ich den 2.4.18-686 kernel aus woody installiere, wird auch eine initrd-2.54.18-686 erstellt (und selbiges fuer 2.4.16-686).
und in der lilo.conf existieren dann auch die entsprechenden eintraege...
Das ist richtig so, da der Debian-Kernel-Maintainer diese Kernel so portabel und platzsparend wir möglich machen wollte, und da war eine initrd das richtige Mittel dazu.
was mache ich also wenn ich mir selbst einen kernel baue?
Am besten keine initrd verwenden, da sie meiner Meinung nach keinerlei Vorteile für den Normalbetrieb bringt, sondern nur zusätzlichen Aufwand.
Muss ich diese Datei vor oder nach dem kernel-bauen mit make-kpkg erstellen?
Vor der Installation des Kernel-debs. Diese Datei hat keinen Einfluss auf die Kernelkompilierung.

Belgarad
Beiträge: 749
Registriert: 12.07.2002 02:00:44

Beitrag von Belgarad » 06.08.2002 14:19:47

habe jetzt versucht meinen selbstgebauten kernel 2.4.18-h1686 mit der initrd vom 2.4.18-686 zu benutzen.
bekomme beim start eine fehlermeldung, sinngemaess:
vfs ... wrong root 3:03 ..
kernel panic...

und dann geht nur noch reset (kein ctrl-alt-del)

liegt das daran, das auf der initrd-2.4.18-686 die falschen module sind?

p.s. vielleicht sollte ich das mit initrd tatsaechlich lassen....

Benutzeravatar
feltel
Webmaster
Beiträge: 10452
Registriert: 20.12.2001 13:08:23
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Leipzig, Germany
Kontaktdaten:

Beitrag von feltel » 06.08.2002 14:24:37

Belgarad hat geschrieben:liegt das daran, das auf der initrd-2.4.18-686 die falschen module sind?
Kann schon sein.
p.s. vielleicht sollte ich das mit initrd tatsaechlich lassen....
ACK

Belgarad
Beiträge: 749
Registriert: 12.07.2002 02:00:44

Beitrag von Belgarad » 08.08.2002 03:04:39

habs geschafft!

man muss zusaetzlich bei make-kpkg den parameter --initrd angeben.

Antworten