PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Neuer Kernel - alte Module behalten



linuxroot
12.04.05, 17:44
Ist es möglich, alte Module für den Kernel auch zu behalten,wenn man einen neuen Kernel installiert?

Ich habe die ipw2100-Treiber installiert, und danach zweimal einen neuen Kernel gebacken. Beim Update von 2.6.8 auf 2.6.11 habe ich es so gemacht, dass ich das bisherige Paket dann gelöscht habe, danach die ipw2100-Treiber neu kompiliert und und installiert habe (checkinstall).
Beim Neukompilieren vom 2.6.11 konnte ich das alte Paket nicht mehr löschen, das Verzeichnis
"/lib/modules/2.6.11/kernel/drivers/net/wireless/ipw2100/" war bereits weg, jetzt ist apt-get wohl verwirrt.

Gibts da ne schlauere Methode? Evtl. "Make mrproper" / "make clean" weglassen, wenn man am Kernel nicht viel verändert?

Tomek
12.04.05, 18:05
Die Treiber bzw. Module müssen immer gegen den Kernel kompiliert werden, mit dem sie auch eingesetzt werden sollen.

JAF
14.04.05, 11:31
wurde das das nicht mit kernel 2.6 geändert?
jetzt kann man unter umständen auch die module behalten, oder?

kleinerfreak
14.04.05, 18:24
Behalten kannst du die Module eigentlich nur, wenn du z.B. Kernel 2.6.10 hast, in diesen aber nochmal was neues einbäckst, z.B. Unterstützung für USB. Wenn der Kernel das vorher nicht als Modul hatte, also gar nicht hatte, dann kannst du dir das make modules && make modules_install sparen. Was nicht gehen wird ist ein vorhandenes Modul einzubacken und das Modul trotzdem zu behalten.

Auch bei Versionssprüngen im Kernel ist Vorsicht geboten...

fuffy
15.04.05, 15:25
Hi!


Beim Neukompilieren vom 2.6.11 konnte ich das alte Paket nicht mehr löschen, das Verzeichnis "/lib/modules/2.6.11/kernel/drivers/net/wireless/ipw2100/" war bereits weg, jetzt ist apt-get wohl verwirrt.
Wie hast du den Kernel kompiliert? Man sollte beim Kernelbau auf Debian auch den Debian-Way gehen, also Kernel sowie Module mit make-kpkg bauen und mit dpkg installieren.

Gruß
fuffy

fuffy
15.04.05, 15:31
Behalten kannst du die Module eigentlich nur, wenn du z.B. Kernel 2.6.10 hast, in diesen aber nochmal was neues einbäckst, z.B. Unterstützung für USB. Wenn der Kernel das vorher nicht als Modul hatte, also gar nicht hatte, dann kannst du dir das make modules && make modules_install sparen. Was nicht gehen wird ist ein vorhandenes Modul einzubacken und das Modul trotzdem zu behalten.
Das kommt darauf an, welche Optionen du umstellst. Es können nur Module für einen ganz bestimmten Kernel geladen werden, da sie versioniert sind.
Beispiel:
vermagic: 2.6.11.7 preempt K8 gcc-3.3
Dieses Modul z.B. lässt sich nur bei einem für Athlon 64 optimierten, mit dem gcc 3.3 kompilierten Kernel mit der Versionsnummer 2.6.11.7 mit aktiviertem Preempting, mit deaktivierten 4KSTACKS sowie ohne REGPARM laden. Ändert sich da irgendwas, lässt sich das Modul nicht mehr laden. :ugly:

Gruß
fuffy

carnil
16.04.05, 19:02
Hallo
wurde das das nicht mit kernel 2.6 geändert?
jetzt kann man unter umständen auch die module behalten, oder?
du meinst das hier?




CONFIG_MODVERSIONS:

Usually, you have to use modules compiled with your kernel.
Saying Y here makes it sometimes possible to use modules
compiled for different kernels, by adding enough information
to the modules to (hopefully) spot any changes which would
make them incompatible with the kernel you are running. If
unsure, say N.


MfG carnil

JAF
16.04.05, 19:41
ja, ich glaube hier hab ich es gesehen ;)