Thomas Hertweck schrieb:
Rolf Hoff wrote:
[...] 1) Ich habe nun festgestellt, dass (bei mir) allen Zeilen in " ./include/linux/autoconf.h" ein '#' vorangestellt ist. [...] Aber auch in "./version.h" sind (bei mir) alle Zeilen mit einem '#' deaktiviert. Außerdem steht da nicht der Name des Kernels mit den Angaben drin, wie in "uname -r" oder "/proc/version"
Diese Zeilen sind nicht auskommentiert, das sind Anweisungen fuer den Praeprozessor! In version.h steht die Definition der Variablen UTS_RELEASE, die sollte genau einem "uname -r" entsprechen, wenn die Kernel-Quellen korrekt fuer den momentan laufenen Kernel konfiguriert sind.
Meine ./version.h sieht so aus: - - - s n i p p #define UTS_RELEASE "2.6.4-52-default" #define LINUX_VERSION_CODE 132612 #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) - - - - s n i p p Ändern sich die Angaben in version.h oder sind die immer gleich? Ändert sich der Versions-Code durch erneutes Kompilieren? Was bedeuten die Angaben in der unteren Zeile? uname -a sieht so aus: ro999:~ # uname -a Linux wieselsdachsbau 2.6.4-52-default #1 Sun May 23 21:19:15 \ CEST 2004 i686 i686 i386 GNU/Linux ro999:~ # uname -r lautet: ro999:~ # uname -r 2.6.4-52-default ro999:~ # Ist das so in Ordnung? Bisher habe ich das immer so für richtig angesehen. Nur durch Dazuko bin ich verunsichert worden. In autoconf.h beginnen alle Zeilen genauso wie in version.h. [ . . . ]
Wie lautet der Code definitiv und wo ist er vor bzw. nach dem Kompilieren zu finden?
Installiere den zu Deinem Kernel passenden Quellcode. Wechsle in das Verzeichnis mit den Quellen und fuehre dort ein "make cloneconfig && make prepare" aus, wenn es sich um die Quellen eines SuSE-Kernels
Anfangs habe ich k_deflt und die kernel-source installiert. Alsdann habe ich die /usr/src/linux/.config-Datei mit xconfig bearbeitet, danach gesichert und mit make bzImage, make modules und make modules_install compiliert. System.map und bzImage entsprechend als System.map-2.6.4-52-default und als vmlinuz nach /boot kopiert. Lilo ausgeführt. Muss ich dabei dann auch "make cloneconfig && make prepare" ausführen?
handelt. Fuer weitere Details und das Vorgehen bei Vanilla Kernelquellen, siehe mein kleines Kernel-Howto, Adresse sollte bekannt sein.
Ja, kenne ich, habe ich mir kopiert. Gefällt mir richtig gut.
Der Link /lib/modules/`uname -r`/build sollte auf das Verzeichnis mit den konfigurierten Kernelquellen zeigen.
Verstehe ich das richtig, dass das Verzeichnis mit den konfigurierten Kernelquellen /usr/src/linux bzw. /usr/src/linux-2.6.4-5 2 ist, also das Verzeichnis, in dem sich auch die .config-Datei befindet? Aber wenn es so ist, warum fragen die Leute von dazuko.org dann nach dem Inhalt von autoconf.h bzw. version.h? (Tut mir leid, wenn diese Frage eine dumme Frage ist. Aber wenn ich sie hier nicht stellen würde, dann bliebe ich unsicher.)
Falls Du zum Compilieren Deines eigenen Kernels ein Build-Directory verwendet hast, dann muss das auch beim Erstellen
habe ich nicht gemacht
des Dazuko-Moduls mit angegeben werden.
Das ist ja das sonderbare an Dazuko. Man kann nichts angeben. Dazuko bildet mit einem make-script seine Module, aber wenn man das zutreffende Modul (dazuko.ko) installieren will, dann klappt das nicht mehr. Dazuko sucht sich selbst, was er haben will und wenns ihm nicht gefällt, dann meckert er, ohne dass man (besser gesagt ich) sich (mich) dagegen wehren kann. Übrigens soll das Installieren des Kernel-Moduls mit "/sbin/insmod dazuko.ko " erfolgen. Gibt es das Kommando noch beim Kernel 2.6* Eine unendliche Geschichte. Ich glaub, ich vergesse einfach, dass es antivir und dazuko gibt. Vielen Dank für die umfangreichen Infos und Hilfen. Beste Grüße Rolf