"unknown symbol" beim laden von kernel-modulen

linuxkasten

Aktives Mitglied
Mitglied seit
2 Feb 2009
Beiträge
891
Punkte für Reaktionen
0
Punkte
16
hallo! tolles forum habt ihr hier...(mein 1. post :))
also:
ich möchte meine fritzbox wlan 3170 dazu bringen, auch ext2-partitionen mounten zu können...
also hab ich mich im telnet eingeloggt und modprobe gemacht...aber das zeigt immer folgenden fehler an:
Code:
# modprobe ext2
insmod: cannot open module `/lib/modules/2.6.13.1-ohio/kernel/fs/mbcache.ko': No such file or directory
insmod: cannot open module `/lib/modules/2.6.13.1-ohio/kernel/fs/ext2/ext2.ko': No such file or directory
modprobe: failed to load module ext2
gut, da hat warscheinlich avm aus platzspargründen einiges weggelassen.
danach hab ich mir freetz gebaut und davon einfach die module und busybox auf meine fat32 partition kopiert und danach dann insmod von der neuen busybox aus gemacht:
Code:
# ./busybox* insmod ./mbcache.ko
insmod: cannot insert './mbcache.ko': unknown symbol in module
# ./busybox* insmod ./ext2.ko
insmod: cannot insert './ext2.ko': unknown symbol in module
und da weiß ich jetz echt nicht weiter....ich hatte sogar freetz schon drauf (ohne "replace kernel", da mir sonst die box dauernd rebootet) aber da kam die gleiche fehlermeldung.

weiß irgendjemand rat,wie ich das anstellen könnte oder zumindest wie ich rausfinden könnte, welche symbole unbekannt sind?
bin für jede hilfe dankbar!

MfG,
linuxkasten

EDIT:
firmware-version:
49.04.58
kernel:
2.6.13.1-ohio
 
Zuletzt bearbeitet:
hast du mal nen modprobe veruscht mit absoluten Pfaden?
 
ja, hab ich jetz auch probiert, selbes ergebnis:
Code:
# /var/media/ftp/USBTOIDE-Partition-0-3/fs/busybox-4mb_26 insmod /var/media/ftp/USBTOIDE-Partition-0-3/fs/mbcache.ko
insmod: cannot insert '/var/media/ftp/USBTOIDE-Partition-0-3/fs/mbcache.ko': unknown symbol in module
# /var/media/ftp/USBTOIDE-Partition-0-3/fs/busybox-4mb_26 modprobe /var/media/ftp/USBTOIDE-Partition-0-3/fs/mbcache.ko
modprobe: module /var/media/ftp/USBTOIDE-Partition-0-3/fs/mbcache.ko not found
modprobe: failed to load module /var/media/ftp/USBTOIDE-Partition-0-3/fs/mbcache.ko
 
Hast du auch für den richtigen Kernel die ext2 übersetzt oder hast du die aus der 7270 kopiert?
 
ja, zuerst hab ichs selbstgemacht mit der toolchain und den kernel-sourcen aus der FW (make M=./fs) und die module genommen,
und nachdem das nicht ging hab ich das ganze freetz gebaut und die module von dort genommen...gebracht hats alles nix.
wie kann ich denn die module aus der 7270-fw kopieren?
 
Die müssen zu deiner Box passen, bzw. zum Kernel. Die 7270 hat nen 2.6.19-er kernel. PAsst also garantiert nicht.
 
Nein, das sollst Du eben nicht, weil die 7270 einen anderen, neueren kernel (2.6.19.2) hat, da passen die module nicht. Ich nahm an, du hast für die 7270 kompiliert und dann herauskopiert, was du brauchst. (Wegen der Fehlermeldung der nicht passenden Symbole)
 
danach hab ich mir freetz gebaut und davon einfach die module und busybox auf meine fat32 partition kopiert und danach dann insmod von der neuen busybox aus gemacht:

Warum hast Du die kopiert und woher? Warum baust Du Dir nicht Freetz zusammen wie Du's brauchst?
 
nein, also ich hab die firmware sourcen von meiner firmware entpackt, dann daraus die kernel sourcen (2.6.13.1) und dann bin ich in den ordner vom kernel gegangen und hab des cross-compiling zeugs alles eingestellt und dann die module kompiliert...aber der will kein einziges annehmen, hab jetz auch schon die anderen fs-module ausprobiert (ntfs etc.), immer der gleiche fehler.
und auch die, die mir freetz erzeugt hat (wo ich im menuconfig auf wlan 3170 eingestellt hab) nimmt er nicht.
irgend eine idee?
 
Ja, pack Freetz komplett auf die Box.
 
Das hab ich auch schon probiert...da das Ding nur 4mb flash hat musste ich alle Pakete abwählen und dann manuell die module auf die festplatte kopieren.
Ich dachte, jetzt müsste es doch eigentlich gehen...aber insmod hat noch immer denselben Fehler gezeigt. Dann ahb ich gelesen, dass es daran liegen könnte, dass ich "Replace Kernel" nicht ausgewählt habe und habs nochmal mit dieser Option kompiliert, allerdings lief dann meine Fritzbox kaum mehr, ständige Reboots...
Achja: Danke, dass ihr alle so schnell antwortet!
EDIT:
Warum hast Du die kopiert und woher? Warum baust Du Dir nicht Freetz zusammen wie Du's brauchst?
Busybox hab ich mir kopiert, weil die eingebaute Busybox mir bei insmod immer nur
"insmod: cannot insert `mbcache.ko': Success (2): Success" zurückliefert, und mit der Zahl wusst ich zunächst nichts mit anzufangen.
 
Zuletzt bearbeitet:
Hört sich verdammt nach diesem Ticket an.

Und bitte erstelle mal eine aussagekräftige Signatur.
 
ja, da hast du recht...bei mir treten die gleichen Symptome auf, danke!
Ich hab jetzt zum probiern nochmal Freetz ohne "Replace Kernel" gemacht, dafür aber mit den ganzen fs-Kernel-Modulen, aber wie gesagt, wenn ich die Laden will, bekomm ich die gleiche Fehlermeldung:
Code:
/var/mod/root # modprobe ext2
insmod: cannot insert '/lib/modules/2.6.13.1-ohio/kernel/fs/mbcache.ko': unknown symbol in module
insmod: cannot insert '/lib/modules/2.6.13.1-ohio/kernel/fs/ext2/ext2.ko': unknown symbol in module
modprobe: failed to load module ext2
/var/mod/root #
Weiß vielleicht jemand, wie ich herausfinde, welche Symbole fehlen oder woran das liegen könnte?

EDIT:
So, es hat sich jetzt erledigt, da ich Freetz glücklicherweise doch noch zum Laufen bekommen hab, juhu!
Siehe hier und hier
Vielen Dank für eure Antworten, besonders Whoopie für Deinen Hinweis auf das Ticket.
Freetz is echt super!
 
Zuletzt bearbeitet:
Hallo allerseits,

ich fuerchte, ich muss den thread wieder eroeffnen. Ich habe ein aehnliches problem wie linuxkasten. Ich probiere cifs auf einer Fritz!Box Fon WLAN 7113 zu benutzen, das modul cifs.ko kann auch in diesem Fall nicht geladen werden. modprobe und insmod liefern bei den "unresolved symbol" fehler. auf dem system laeuft freetz (1.0.3), die kernel-version ist 2.6.13.9-ohio. via menuconfig habe ich freetz fuer die 7113 kompiliert (Suse 11.1, 64bit).

linuxkasten hatte das problem geloest, indem das modul usermand nicht per patch entfernt wurden. diese module sind bei mir schon auf der originalen firmware nicht existent. des weiteren ist unter dem menupunkt "patches" von menuconfig kein solcher punkt vorhanden.


Das problem kam mir bekannt vor (waere nicht der erste linux-kernel, der nicht so wollte wie ich). Es erinnert mich an faelle, wo das modul mit den falschen kernel-sources kompiliert wurde o. nicht zur verionsnummer passt, was sich bei linux praktischer weise beim kompilieren des kernels teils beheben laesst ("Allow loading of modules with incompatible version").

Ich habe also den kernel auf der fritz!Box ersetzt. leider lief sie danach _extrem_ instabil, hat im minutentakt rebootet oder ist nicht mehr hochgefahren, wenn das wlan an war. Dafuer liess sich aber das modul cifs.ko problemlos laden... was leider beim restlichen zustand der box nicht wirklich troestlich war. Jetzt laeuft wieder der anfaengliche kernel (2.6.13.1-ohio, der von der avm-firmware).

koennte mir jemand vielleicht weiterhelfen? Ich waere fuer jede idee dank. Was ist der unterschied zwischen dem freetz 2.6.13ner kernel und dem von avm?

ein vorbeugendes danke an alle
 
Kannst du mal im dmesg schauen um welche Symbole es sich handelt? Welche Firmware baust du? Welcher Kernelsource wird genommen?

MfG Oliver
 
Hi Oliver,

Die firmware ist die aktuelle fuer meine 7113: 60.04.67.

ich kann dir leider nicht allzu viele details nennen. Ich leide selber unter informationsknappheit. da kein syslogd auf der box laeuft (und sich ohne ersetzten kernel auch weigert zu laufen) ist kein dmesg bzw /var/log/messages verfuegbar.

modprobe cifs liefert schlicht
insmod: cannot insert '/lib/modules/2.6.13.1-ohio/kernel/fs/cifs/cifs.ko': unknown symbol in module
modprobe: failed to load module cifs

insmod an sich (mit absolutem pfad) liefert das selbe.

Der auf der box laufende kernel indentifiziert sich als
/lib/modules/2.6.13.1-ohio/kernel/fs/cifs # uname -a
Linux fritz.fonwlan.box 2.6.13.1-ohio #1 Thu Jan 22 13:55:25 CET 2009 mips unknown

Der in den freetz-sources vorhandenen kernel kann ich nicht wirklich indentifizieren. Die modulincludes scheinen die module fuer verschiedene kernel zu konfigurieren, alle zwischen 2.6.13.1 (aes) bis 2.6.19.2 (algapi/sha256). Fuer das betroffene modul cifs ist kein "depends on FREETZ_KERNEL_VERSION" flag gesetzt.


Wenn ich das so schreibe faellt mir auf, dass der kernel an sich schlecht vom freetz installer kompiliert werden kann... wo kommen die module eigentlich her? kann man sie via installer kompilieren lassen? oder viel mehr: wenn ich mir die 2.6.13.1 sources aus den kernel archives runterlade und das modul fuer mips cross-compile, wuerde ich es laden koennen?

Vielen dank fuer deine hilfe Oliver.
 
Freetz nutzt die Sourcen, die AVM zur Verfügung stellt, weil da auch allerhand Patches seitens avm mit drin sind. Diese Module werden im make-Prozess passend zum Kernel gebaut.
 
Ich hab grad ein fehlendes Changeset in den stable-branch-1.0 gemerged. Also entweder checkst du den aus oder du nimmst den stable-branch-1.1 oder den 1.1rc hier aus dem Forum.

MfG Oliver
 
Ich hab mir jetzt eine serielle Konsole gebaut. Soll ich nochmal usermand entfernen, und schaun, ob die Konsole was ausspuckt?
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.