(Verstaendnis-) Fragen zum Kernel Backen
Hallo zusammen, Da ich Framebuffer fuer meine Grafikkarte aktivieren moechte, der Kernel von 7.1 (2.4.0-4GB), so wie ich die Config verstehe, die hierfuer notwendigen Module fuer meine Grafikkarte (AIT Rage 128) nicht enthaelt, moechte ich mich an's Kernel backen machen. Einige Threads von letzter Woche habe mir schon sehr geholfen (z.B. auskommentieren von 'deactivate_page(page)'). Trotzdem habe ich noch ein paar Fragen und Probleme. Da es mein erster Back-Versuch ist, wollte ich die Config vom 2.4.0-4GB als Vorlage benutzen. Also den 'linux-2.4.14' ausgepackt und in /usr/src/linux-2.4.0-4GB und /usr/src/linux-2.4.14 ein 'make xconfig' gemacht, beide durchgegangen und den 2.4.14-er entsprechend meiner vorhandenen Hardware eingestellt. Nun ein paar (verstaendnis-) Fragen: o Sind in /boot enthaltenen *.config Files die Config-Files des jeweiligen Kernels ? vmlinuz_24.config fuer 2.4.0-4GB vmlinuz.config fuer 2.4.0.SuSE o Einige Config Knoepfe sind im 2.4.14 nicht aktiviert in dem 2.4.0-4GB oder 2.4.0.SuSE aber schon (z.B. 'Reisertfs' oder auch 'Frame-buffer support', wegen dem ich ja eigentlich damit angefangen habe) Bedeuted das, dass die hierzu notwendige Software nicht im Paket des 2.4.14 enthalten ist und ich diese erst noch vom WEB runterladen und installieren muss ? o Den neuen Kernel habe ich nach dem Speichern der Config mit - make dep - make bzImage - make modules - make modules_install - cp arch/i386/boot/bzImage /boot/vmlinuz_2.4.14 - cp System.map /boot/System.map-2.4.14 - anpassen von /etc/lilo.conf - /sbin/lilo erzeugt und installiert. Ein anschliessendes booten verlief erstmal erfolgreich. Was mir beim Starten des KDE2 gleich auffiel war, dass der Sound nicht funktionierte. Ich bin mir jedoch sicher die notwendigen Module entsprechend aktiviert zu haben: - Sound card support als module - ESS Technology Solo1 als module Tips ?? o Als 'initrd' habe ich die 'initrd_24' nach 'initrd_2.4.14' kopiert und in '/etc/lilo.conf' entsprechend eingetragen. Muss das auch angepasst werden ? Wenn ja wie (In welcher Doku steht's ?) In der Kernel-Doku habe ich nichts gefunden. Ob meine andere Hardware (SCSI, Netswerk, Drucker) auch alles funktioniert habe ich erst einmal nicht getestet. Kommentare ? Tips ? DANKE Werner Franke
Am Mon, 19 Nov 2001 schrieb Werner Franke:
Da es mein erster Back-Versuch ist, wollte ich die Config vom 2.4.0-4GB als Vorlage benutzen. Also den 'linux-2.4.14' ausgepackt und in /usr/src/linux-2.4.0-4GB und /usr/src/linux-2.4.14 ein 'make xconfig' gemacht, beide durchgegangen und den 2.4.14-er entsprechend meiner vorhandenen Hardware eingestellt.
Am einfachsten geht das, wenn der laufende Kernel ein SuSE-Kernel ist, mit zcat /proc/config.gz > .config im Quellverzeichnis (/usr/src/linux-2.4.14)
Nun ein paar (verstaendnis-) Fragen:
o Sind in /boot enthaltenen *.config Files die Config-Files des jeweiligen Kernels ?
Bei der Standardinstallation schon, es gibt aber keinen Mechanismus, der sie dahin schiebt...
vmlinuz_24.config fuer 2.4.0-4GB Das ist die Config des 2.4er SuSE-Kernels.
vmlinuz.config fuer 2.4.0.SuSE
Nehme an, daß ist die Config des bei 7.1 enthaltenen 2.2.18
o Einige Config Knoepfe sind im 2.4.14 nicht aktiviert in dem 2.4.0-4GB oder 2.4.0.SuSE aber schon (z.B. 'Reisertfs' oder auch 'Frame-buffer support', wegen dem ich ja eigentlich damit angefangen habe) Bedeuted das, dass die hierzu notwendige Software nicht im Paket des 2.4.14 enthalten ist und ich diese erst noch vom WEB runterladen und installieren muss ?
Auf der ersten Seite mußt Du experimentelle Treiber aktivieren...
o Den neuen Kernel habe ich nach dem Speichern der Config mit - make dep - make bzImage - make modules - make modules_install - cp arch/i386/boot/bzImage /boot/vmlinuz_2.4.14 - cp System.map /boot/System.map-2.4.14
Eventuell solltest Du Deinem Kernel eine separate modules.conf gönnen. Siehe dazu D. Hallers Multikernel-Howto www.dhaller.de/linux/multikernel.html
- anpassen von /etc/lilo.conf - /sbin/lilo erzeugt und installiert. Ein anschliessendes booten verlief erstmal erfolgreich. Was mir beim Starten des KDE2 gleich auffiel war, dass der Sound nicht funktionierte. Ich bin mir jedoch sicher die notwendigen Module entsprechend aktiviert zu haben: - Sound card support als module - ESS Technology Solo1 als module
Du nutzt sicherlich ALSA Sound, die Module mußt Du extra kompilieren, der Code ist nicht im Kernel enthalten.
o Als 'initrd' habe ich die 'initrd_24' nach 'initrd_2.4.14' kopiert und in '/etc/lilo.conf' entsprechend eingetragen. Muss das auch angepasst werden ? Wenn ja wie (In welcher Doku steht's ?) In der Kernel-Doku habe ich nichts gefunden.
Habe von Initial Ramdisks wenig Ahnung, aber Kopieren ist nicht die Lösung: Du mußt das Skript mk_initrd aufrufen (mach mal /sbin/mk_initrd -h) Aber warum nutzt Du überhaupt eine InitRD. Wenn Du den Kernel selbst bäckst, kannst Du doch alles einkompilieren, was Du brauchst. InitRD ist IMHO nur sinnvoll für Distributoren oder wenn der gleiche Kernel auf unterschiedlichen Systemen (z.B. unterschiedliche SCSI-Controller) laufen soll. Gruß Christoph -- Christoph Maurer - Paul-Röntgen-Straße 7 - 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
Am Montag, 19. November 2001 09:31 schrieb Werner Franke:
Hallo zusammen,
Da ich Framebuffer fuer meine Grafikkarte aktivieren moechte, der Kernel von 7.1 (2.4.0-4GB), so wie ich die Config verstehe, die hierfuer notwendigen Module fuer meine Grafikkarte (AIT Rage 128)
hallo Werner, ich habe die Grafikkarte ATI Rage 128 pro, und die wird seit SuSE 7.0 problemlos unterstuetzt. Mit SuSE 6.4 musste ich noch mit Framebuffer arbeiten. Gruss, Anselm nicht
enthaelt, moechte ich mich an's Kernel backen machen.
Einige Threads von letzter Woche habe mir schon sehr geholfen (z.B. auskommentieren von 'deactivate_page(page)'). Trotzdem habe ich noch ein paar Fragen und Probleme.
Da es mein erster Back-Versuch ist, wollte ich die Config vom 2.4.0-4GB als Vorlage benutzen. Also den 'linux-2.4.14' ausgepackt und in /usr/src/linux-2.4.0-4GB und /usr/src/linux-2.4.14 ein 'make xconfig' gemacht, beide durchgegangen und den 2.4.14-er entsprechend meiner vorhandenen Hardware eingestellt.
Nun ein paar (verstaendnis-) Fragen:
o Sind in /boot enthaltenen *.config Files die Config-Files des jeweiligen Kernels ? vmlinuz_24.config fuer 2.4.0-4GB vmlinuz.config fuer 2.4.0.SuSE
o Einige Config Knoepfe sind im 2.4.14 nicht aktiviert in dem 2.4.0-4GB oder 2.4.0.SuSE aber schon (z.B. 'Reisertfs' oder auch 'Frame-buffer support', wegen dem ich ja eigentlich damit angefangen habe) Bedeuted das, dass die hierzu notwendige Software nicht im Paket des 2.4.14 enthalten ist und ich diese erst noch vom WEB runterladen und installieren muss ?
o Den neuen Kernel habe ich nach dem Speichern der Config mit - make dep - make bzImage - make modules - make modules_install - cp arch/i386/boot/bzImage /boot/vmlinuz_2.4.14 - cp System.map /boot/System.map-2.4.14 - anpassen von /etc/lilo.conf - /sbin/lilo erzeugt und installiert. Ein anschliessendes booten verlief erstmal erfolgreich. Was mir beim Starten des KDE2 gleich auffiel war, dass der Sound nicht funktionierte. Ich bin mir jedoch sicher die notwendigen Module entsprechend aktiviert zu haben: - Sound card support als module - ESS Technology Solo1 als module
Tips ??
o Als 'initrd' habe ich die 'initrd_24' nach 'initrd_2.4.14' kopiert und in '/etc/lilo.conf' entsprechend eingetragen. Muss das auch angepasst werden ? Wenn ja wie (In welcher Doku steht's ?) In der Kernel-Doku habe ich nichts gefunden.
Ob meine andere Hardware (SCSI, Netswerk, Drucker) auch alles funktioniert habe ich erst einmal nicht getestet.
Kommentare ? Tips ?
DANKE Werner Franke
On Mon, 19 Nov 2001, Werner Franke wrote:
Da es mein erster Back-Versuch ist, wollte ich die Config vom 2.4.0-4GB als Vorlage benutzen. Also den 'linux-2.4.14' ausgepackt und in /usr/src/linux-2.4.0-4GB und /usr/src/linux-2.4.14 ein 'make xconfig' gemacht, beide durchgegangen und den 2.4.14-er entsprechend meiner vorhandenen Hardware eingestellt.
Das halte ich prinzipiell auch fuer die sinnvollste Variante :)
Nun ein paar (verstaendnis-) Fragen:
o Sind in /boot enthaltenen *.config Files die Config-Files des jeweiligen Kernels ? vmlinuz_24.config fuer 2.4.0-4GB vmlinuz.config fuer 2.4.0.SuSE
Theoretisch. Wobei das .config evtl. auch fuer den 2.2.er ist. Im Zweifelsfall: 'zcat /proc/config.gz' Du kannst z.B. auch mal zcat /proc/config.gz | diff -u /boot/vmlinux_24.config - testen, vorausgesetzt du verwendest nen Kernel mit dem config.gz-Patch (der in allen aktuelleren Suse-Kernels drin ist).
o Einige Config Knoepfe sind im 2.4.14 nicht aktiviert in dem 2.4.0-4GB oder 2.4.0.SuSE aber schon (z.B. 'Reisertfs' oder auch 'Frame-buffer support', wegen dem ich ja eigentlich damit angefangen habe) Bedeuted das, dass die hierzu notwendige Software nicht im Paket des 2.4.14 enthalten ist und ich diese erst noch vom WEB runterladen und installieren muss ?
Kommt drauf an. Bei reiserfs ist's aber nicht so, du musst da bei "Code maturity level options" die Option "[*] Prompt for development and/or incomplete code/drivers" aktivieren.
o Den neuen Kernel habe ich nach dem Speichern der Config mit - make dep
- make clean
- make bzImage - make modules - make modules_install - cp arch/i386/boot/bzImage /boot/vmlinuz_2.4.14 ^ hier beser auch ein '-' verwenden, also. konsequent _immer_ den '-' verwenden...
- cp System.map /boot/System.map-2.4.14 ^ ... wie hier. - anpassen von /etc/lilo.conf - /sbin/lilo erzeugt und installiert.
Soweit so gut (siehe aber auch http://www.dhaller.de/linux/multikernel.html)
Ein anschliessendes booten verlief erstmal erfolgreich. Was mir beim Starten des KDE2 gleich auffiel war, dass der Sound nicht funktionierte. Ich bin mir jedoch sicher die notwendigen Module entsprechend aktiviert zu haben: - Sound card support als module - ESS Technology Solo1 als module
Tips ??
Die kenne ich leider nicht, ich verwende hier die Kernel-OSS Treiber.
o Als 'initrd' habe ich die 'initrd_24' nach 'initrd_2.4.14' kopiert und in '/etc/lilo.conf' entsprechend eingetragen.
siehe oben zu '_' und '-'... IMO ist es besser wenn du alles was in die initrd muesste, da es zum booten benoetigt wird direkt fest in den Kernel einzubauen. Ansonsten musst du AFAIK mk_initrd aufrufen... Damit kenn ich mich aber nicht aus.
Muss das auch angepasst werden ? Wenn ja wie (In welcher Doku steht's ?) In der Kernel-Doku habe ich nichts gefunden.
man initrd (und man mk_initrd / Suse-HB...) -dnh -- :Mamma, kuck ma, ich bin in der Sicknatur! [Dieter Bruegmann in dag°]
participants (4)
-
Anselm Schardt
-
Christoph Maurer
-
David Haller
-
Werner Franke