linux-l: Module

9teen 9teen at chill.de
Sa Jan 19 13:18:31 CET 2002


Shalom,

Dr.Gee wrote:

> Ich habe zu Anfang gleich mal folgende Fragen :
> Welcher Unterschied besteht zwischen insmod und modprobe ?


Folgende Lekture dazu kann ich empfehlen:

   http://www.linuxfibel.de/

oder konkret:

   http://www.linuxfibel.de/kmodule.htm

auf Deine Frage bezogen:

insmod wird seine Aufgabe verweigern, wenn das zu ladende Modul die 
Existenz anderer Module bedingt, jene aber noch nicht geladen wurden. 
Per Hand ließe sich das Sorgenkind schnell hinzufügen, doch bedeutet das 
zum einen unnötigen Aufwand und zum anderen verbietet es die Verwendung 
von insmod in Skripten, da Fehler quasi vorprogrammiert sind.

Der Ausweg kommt in Form von modprobe daher, das für sich ein 
intelligentes insmod darstellt, da es Abhängigkeiten zwischen den 
Modulen entdecken und auch auflösen kann (tatsächlich ruft es insmod zum 
eigentlichen Laden auf; daher können Sie - analog zu insmod - Parameter 
an modprobe übergeben). Natürlich spekuliert modprobe nicht ins Blaue 
hinein, sondern konsultiert eine kleine Datenbank modules.dep, die 
(hoffentlich) die notwendigen Informationen bereit hält. Zu dieser 
Datenbank folgt im Anschluss mehr...


> Muss ich die Module , die ich laden will bei jedem boot wieder neu von Hand
> laden (insmod oder modprobe ?) , oder gibt es eine Möglichkeit das das
> System das irgendwie Automatisch macht .


Die Datei zur Modulkonfiguration liegt unter

/etc/modules.conf

Dort traegst Du hinter dem Alias des jeweiligen Geraetes das gewuenschte 
Modul ein, z.B.

 > alias char-major-81       bttv
 > options bttv    pll=1 radio=0 card=0
 > options tuner   type=0
 > options msp3400 once=1 simple=1
 >
 > post-install bttv /sbin/modprobe "-k" tuner; \
 >                   /sbin/modprobe "-k" msp3400


laedt den Treiber 'bttv' fuer meine WinTV PCI automatisch, sobald das 
Geraet benoetigt wird, i.e. ich z.B. gnomeTV starte o.ae.

Nach dem Abspeichern mit

depmod -a

die Abhaengigkeiten der geaenderten Kernelmodule aufloesen.

 
> (Ich habe mitlerweile rausgefunden , das Yast2 die Module die ich
> configuriere läd , aber es gibt ja auch Module , die ich nicht über Yast2
> configurieren kann z.b. Prozessor modul bzw. wenn ich bei Yast2 meine
> Soundkarte einstelle scheint das Modul beim booten nicht richtig geladen zu
> werden  ?!?


Prozessor Modul ?
Manuelles Laden von Modulen beim Starten des Systems kannst Du mit der 
Datei

   /etc/init.d/boot.local

   /sbin/modprobe es1371
   /sbin/modprobe gameport
   /sbin/modprobe -ak joydev sidewinder


machen, indem Du dort einfach den Befehl modprobe <modulname> aufrufst, 
aber eigentlich sollten die Module geladen werden, wenn sie auch 
wirklich benoetigt werden. Hierbei ist die reihenfolge der Modulaufrufe 
zu beachten, da es z.B. wenig Sinn macht, erst den 'gameport' zu laden, 
bevor die 'es1371' (Soundblaster PCI) geladen ist.

Na dann noch Viel Glueck

KiSSes
9teen
-- 
-------------------------------------------
respektundfreiheitfoundation
http://chill.de/
ICQ: 14 67 39 83
-------------------------------------------
Under capitalism, man exploits man.
Under communism it's the other way
  around.




Mehr Informationen über die Mailingliste linux-l