PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Nach neuem Kernel werden keine Module mehr beim booten geladen!



darge_o_flex
09.11.01, 22:48
Hi, erstmal: alles unter debian woody mit urspruenglich 2.2-17reiserfs-pre6. Nun 2.4-14. Ich habe den kernel mit kernel-package kompiliert. Also erstmal make clean, dann make menuconfig, darauf make-kpkg kernel_image und schliesslich das neu erschaffene deb-package mit dpkg -i kernel.deb installiert. Also ganz, denke ich zumindest, nach den debian-regeln. So stehts zumindest auf debianplanet.
Laeuft auch alles prima, kann die module, z.b. fuer sound und netzwerkkarte ja per modprobe laden und die laufen dann auch. Nur beim hochfahren des rechners werden jene halt nicht autom. geladen! Da stehen dann auch einige fehlermeldungen...
Mein problem ist wahrscheinlich, dass ich nicht weiss in welcher log debian die fehlermeldungen beim booten dokumentiert und wie die datei unter debian heisst, in der steht, was beim booten alles gestartet werden soll. Sonst waere ich da evtl. schon selber drauf gekommen... ;)

Danke schonmal.

flasheye
10.11.01, 23:26
Hallo darge_o_flex,

welche Module beim Booten gestartet werden sollen, wird in der /etc/modules.conf festgelegt. Schau mal in die man pages (modules, modconf, etc.). Die interessante Logdatei ist die /var/log/messages. Wenn Du irgendwelche Sachen ausprobierst, kannst Du sie auch während dessen mitverfolgen. -> tail -f /var/log/messages. Mit Strg-c kann man da wieder raus.

Ich hoffe ich konnte weiterhelfen.

DasSein

Trillian
10.11.01, 23:42
Die Datei ist "/etc/modules", ohne .conf :)

Unter Debian sollte man nie von Hand an /etc/modules.conf rumfummeln, da diese per Script gewartet wird.

darge_o_flex
11.11.01, 19:16
Die man-pages sagen, dass die 'modules' und 'modules.conf' von 'modconf' erstellt werden. Also habe ich mal modconf gestartet und siehe da: NICHTS! Die liste ist komplett leer, bis auf der eine eintrag 'exit with this modules....'.
Kann es sein, dass erst noch eine umgebungsvariable zu den neuen modules-pfad (/lib/modules/2.4.14 anstatt /lib/modules/2.2.17) gesetzt werden muss?!? Weiteres indiz dafuer waere ja auch, dass ich erst in einen modules-ordner wechseln muss, bevor ich module 'modprobe'n kann! Ist ja auch nicht so ganz normal...
Wenn mir da jemand noch nen tipp geben koennte.... :D

ciao, darge0flex

(Oder erstmal vielleicht: wie liste ich alle gesetzten umgebungsvariablen auf? (Unter msdos reichte ja ein einfaches SET...))

flasheye
11.11.01, 21:03
Hallo,

Trillian hat natürlich recht, soll man nicht machen. Tut mir leid, wenn ich mich ein wenig missverständlich ausgedrückt habe. Einen Pfad setzen brauchst Du nicht, denn beim Booten wird durch /etc/rc2.d/S12kerneld der Kerneldeamon gestartet. Dieses Skript hat eine Zeile ...



cd /lib/modules/`uname -r` > /dev/null 2>&1 || exit 0;


...welche immer im richtigen Verzeichnis nachschaut. uname -r liefert die Kernelversion zurück.

Ich schätze, dass Dir bei der Konfiguration der Netzwerkkarte folgendes Skript hilft.



#! /bin/sh

set -e

case "$1" in
start)
echo -n "Starting eth0: "
ifconfig eth0 up && echo "Done." || echo "Failed!"
;;
stop)
echo -n "Stopping eth0: "
ifconfig eth0 down && echo "Done." || echo "Failed!"
;;
esac

exit 0


Leg es unter dem Namen eth0 in /etc/init.d ab. Dann erstelle einen Link in /etc/rc2.d/ namens S13eth0.



cd /etc/rc2.d; ln -s ../init.d/eth0 S13eth0


Sound habe ich selbst unter Debian noch nicht eingerichtet, da kann ich leider nicht weiterhelfen.

Als dann, bis bald.

DasSein

Pingu
11.11.01, 21:10
Hi flasheye,

unser Premium Pilsener ähh Trillian ;o) hat es doch schon gesagt, alles in die /etc/modules eintragen. Bei mir steht da z.B.

# /etc/modules: kernel modules to load at boot time.
#
# This file should contain the names of kernel modules that are
# to be loaded at boot time, one per line. Comments begin with
# a #, and everything on the line after them are ignored.
autofs
nls_iso8859-1
rarp
irport
parport_pc
lp
serial
sound
mousedev
usbmouse


-= Pingu =-

Trillian
11.11.01, 21:40
Ähm

Ich benutze nie das kernel-package (nur für die nvidia Treiber), aber kann es sein, dass ein make-kpgk image nicht die Module berücksichtigt?

Mach mal "make modules modules_install". Vielleicht hilfts ja was.

Wichtig:
Vergiss, was flasheye da gesagt hat! Dadrum brauchst du dich garnicht kümmern!

darge_o_flex
12.11.01, 12:12
Hi, erstmal danke fuer eure antworten!

@Trillian: Module werden von kernel-package auch beruecksichtigt.

@flasheye: an einem fehlenden script liegt es wohl auch nicht, siehe unten.

Also, ich hab jetzt debian (2.2.17pre6reiserfs) noch mal neu installiert, ist jetzt also alles ganz frisch! Dann denn kernel 2.4.14 drauf. Leider hat sich dadurch nichts gebessert, sondern sogar geringfuegig verschlechtert: es ist jetzt ueberhaupt nicht mehr moeglich irgendein modul zu laden! egal ob netz oder sound etc. Ich kann direkt in den ordner gehen, z.b. /lib/modules/2.4.14/kernel/drivers/net/ und da ein 'modprobe 8139too' eingeben und bekomme trotzdem die meldung, dass modprobe das modul nicht findet! Da kann doch nur etwas grundlegendes nicht stimmen, bestimmt irgend ne kleinigkeit. Und das ich ne leere liste bekomme, wenn ich modconf starte, haengt bestimmt auch damit zusammen.
Kann es vielleicht daran liegen, dass sich die position der module von 2.2 auf 2.4 geaendert hat? Bei 2.2 waren die ordner wie net, scsi, etc. ja noch direkt in /lib/modules/2.2.xx Jetzt sind sie ja in /lib/modules/2.4.xx/kernel/drivers. Wahrscheinlich muss ich irgend nen verweis oder link anpassen oder sowas...
Danke schonmal im voraus!

philippmueller
12.11.01, 12:31
Hast Du denn auch die passenden modutils installiert?

Der 2.4. braucht eine andere als der 2.2.

Versuche doch erst mal einen normales Debian-Kernel-Paket mit dem 2.4. mit allen Abhängigkeiten zu installieren, dann ist die ganze Umgebung schon einmal richtig.

Erst dann installierst Du Dir Deinen selbstkompilierten.

darge_o_flex
12.11.01, 15:17
@philippmueller: natuerlich hab ich nicht neuere modutils drauf! Das koennte es ja schonmal sein.
Wie bekomme ich denn ein debian-kernel-packet mit dem 2.4er?! Wenn ich bei mir z-b- 'apt-get install kernel-image' eingebe, zeigt er mir zwar einige zur auswahl, aber das sind alles 2.2er! Oder muss ich die quellen in der /etc/apt/sources.list' erst auf woody aendern?

Trillian
12.11.01, 15:37
Wenn du auf potato (der Codename von Debian 2.2) einen 2.4er Kernel benutzen willst, benötigst du die inoffiziellen Pakete von Adrian Bunk.

Potato ist nunmal etwas älter ;) deswegen gabs da noch keine offizielle Unterstützung. Aber mach dir keine Sorgen, die Dinger funzen ganz gut AFAIK.

Wo du die herkriegst steht in der Liste der "unofficial APT sources", und die wiederum steht auf www.debianplanet.org (Links im Menü irgendwo).

HTH,
das Premium Pilsener ;)

pucki
12.11.01, 16:07
hi,

so da hätte ich auch noch etwas einzuwerfen.

in /etc/modules werden wie schon erwähnt alle module eingetragen, die beim booten geladen werden sollen.

die /etc/modules.conf wird mit
update-modules oder modules-update (sitze gerade nicht davor)
erstellt. bei der erstellung werden die daten die unter

/etc/modutils/..

zu finden sind zugrunde gelegt.

um module nach die beim kompilieren als solche gekennzeichnet werden zu kopieren, verwendet man den Befehl make modules_install

fügt man weitere module hinzu wie nvidia oder cdfs, die nicht direkt zum kernel gehören, verwendet man den befehl
make-kpkg modules_image
bei nvidia muß man dann noch ins verzeichnis *-glx wechseln und
dpkg-buildpackage -us -uc laufen lassen ;-)

aber das steht ja alles schön in der docu ;-)

/usr/share/doc/...

oh, bezüglich des sounds kann es evtl zu mehr aufwand kommen.
alsa habe ich leider bei seite schieben müssen, mit dem in den kernel einkompilierten treiber funzt es recht gut ;-)

das update auf woody läßt sich mit dselect recht gut abwickeln. am besten gibt man gleich mehrere quellen an, dann ist meistens auch das dabei was man braucht ;-)

ach bei kernel 2.4.x hat sich beim booten auch noch etwas geändert. weiteres zu finden unter dem Stichwort initrd oder initrc, wie gesagt ich sitze gerade nicht davor ;-)))

darge_o_flex
12.11.01, 23:22
Hi,
wieder so viele antworten, cool. :D
Die module laufen bei mir jetzt! Ich habe einfach den tipp von trillian befolgt und die modutils und andere mit den paketen v. adrian bunk geupdatet. Danach ging alles fast von selber. Endlich :)

Jetzt noch ne glitze kleine frage: hab direkt danach auf woody mit apt-get geupdatet und hab jetzt keinen deutschen tastaturtreiber mehr. Wir kann ich das wieder aendern?!

Und noch was: wie heisst die doc, die beschreibt, wie man die nvidia-treiber per kernel-package installiert?

thx

Trillian
13.11.01, 05:13
Die Pakete heissen:
nvidia-kernel-src
nvidia-glx-src

Geht das easy und ist in der /usr/share/doc/PAKETNAME/README.Debian erklärt

Wenn du auf woody upgedatet hast, brauchst du die Pakete von Bunk nicht mehr! Woody unterstützt Kernel 2.4 natürlich out-of-the-box :)