PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : redhat7, problem modularer kernel



21.03.01, 08:30
hi,

usprünglich wollte ich kernel-2.2.18 von www.kernel.org (http://www.kernel.org) installieren.
Vorgangsweise:
# alle Updates(außer kernel-2.2.17.i386.rpm) für RedHat7 von ftp://updates.redhat.com mit
# rpm -U *.rpm
installiert und korrekte installation mit
# rpm -q *
für jedes einzelne packet kontrolliert.
# cd /usr/src
# rm /usr/src/linux
# tar xzf /root/linux-2.2.18.tar.gz
# mv linux linux-2.2.18
# ln -s linux-2.2.18 linux
# cd linux
# in makefile mit editor:
extraversion=-ipv6
kgcc statt gcc eintragen
# make mrproper
# make xconfig (kmodsupport und module version=yes, die meisten treiber als modul)
# make dep clean
# make bzImage
# make modules
# make modules_install
# cp arch/i386/boot/bzImage /boot/vmlinuz-2.2.18-ipv6
# cp System.map /boot/System.map-2.2.18-ipv6

# cd /boot
# cp vmlinuz vmlinuz.old
# rm vmlinuz
# ln -s vmlinuz-2.2.18-ipv6 vmlinuz
# rm Sytem.map
# ln -s System.map-2.2.18-ipv6 System.map
# cp /etc/lilo.conf /etc/lilo.conf.backup
# einfügen in lilo.conf mit editor:
image=/boot/vmlinuz-2.2.18-ipv6
label=linux-ipv6
root=/dev/hda11
read-only
# /sbin/lilo
# /sbin/shutdown -r now

-> hardware wird fehlerfrei erkannt
-> fehlermeldung beim boot:
.)modprobe: modprobe: Can´t open dependencies file /lib/modules/2.2.18-ipv6/modules.dep (No such file or directory)
.) FATAL: cannot determine library version
.) Warning...fsck.ext2 for device /dev/hda11 exited with signal 6 [FAILED]

nun mein problem: die datei modules.dep existiert tatsäclich nicht? Woher nehmen?

->nach mehreren neuen kompile-versuchen erfolglos abgebrochen!!

->kernel-2.2.17.i386.rpm und alle zugehörigen kernel-*-2.2.17.i386.rpm von redhat installiert und siehe da: ohne kompilierung vmlinuz-2.2.17-14, System.map-2.2.17-14, /lib/modules/2.2.17-15 installiert. modules.dep im verzeichnis vorhanden.
-> konfigurieren, kompilieren des kernels nach obiger methode (ich brauche noch immer ipv6-support), make modules modules_install
-> modules.dep wurde nicht überschrieben oder geändert.
-> reboot
-> kernel läuft zwar aber alle nachträglich modularisierten treiber fehlen! eine fehlermeldung von wegen modules.dep erscheint beim boot
-> ipv6-support und geräte-treiber meines systems nicht modular sondern in den kernel einkompiliert!
-> alles funktioniert!

wo liegt mein fehler bei der erstellung eines modularen kernels??????

CU Godfather14

thommy
23.03.01, 07:27
Schau Dir mal das Manual zu depmod an...

Thomas

23.03.01, 07:54
alles klar, so konnte es ja nicht funktionieren,danke für den tipp.

nur noch eine frage, muß
#/sbin/depmod -a
vor oder nach dem ersten reboot nach der kernelkompilierung aufgerufen werden.

CU Godfather14


[Dieser Beitrag wurde von Godfather14 am 23. März 2001 editiert.]

thommy
23.03.01, 07:56
Die meisten Distributionen packen den Aufruf in eines der Bootskripte, sodass Modulabhängigkeiten bei jedem Start neu berechnet werden.

Thomas

23.03.01, 08:00
heißt das, ich muß /sbin/depmod -a gar nicht manuell aufrufen, sondern es wird automatisch erledigt?
weißt du zufällig wo ich dieses bootscript bei RH7 finde?

CU Godfather14

23.03.01, 08:13
habe das jetzt mal nachträglich für kernel 2.2.17 versucht und folgende meldungen erhalten:
depmod: /lib/modules/2.2.17-14.directory is not an ELF file
depmode: *** Unresolved symbols in /lib/modules/2.2.17-14/* ->hier folgen jetzt ca 15 einträge, unter anderem einer für IPv4/ipip.o, jetzt weiß ich auch warum ich keinen IPv6 over IPv4 tunnel zu stande bringe, da es mit dem modul probleme gibt.

was hat das zu bedeuten?

Godfather14

PS.: habe soeben dein exzelente hp "die linuxfibel" entdeckt, du hast das problem offensichtlich sehr gut beschrieben, werde mich da mal durchlesen, danke

[Dieser Beitrag wurde von Godfather14 am 23. März 2001 editiert.]

thommy
23.03.01, 08:32
Wo RH den Aufruf verpackt hat, weiß ich auch nicht. Vermutlich entweder in ihrem rc.sysinit-Skript oder in einem der Skripte unter /etc/rc.d/init.d; vielleicht aber auch unter /etc/rc.local. Lasse doch mal ein "grep depmod ..." über die verdächtigen Dateien laufen.

Unter "directory is not an ELF file" kann ich mir nun gar nichts vorstellen... die "unresolved symbols..." liegen vermutlich an fehlenden Modulen. Versuche mit "insmod dieses_modul.o" mal die betreffenden Module direkt zu laden, vielleicht erkennst Du, was dann fehlt.

Thomas