Manpages

NÉV

modprobe − betölthető modulok magas szintű kezelése

ÁTTEKINTÉS

modprobe [ −adnqv ] [ −C config ] modul [ szimbólum=érték ... ]
modprobe
[ −adnqv ] [ −C config ] [ −t típus ] minta
modprobe
−l [ −C config ] [ −t típus ] minta
modprobe
−c [ −C config ]
modprobe
−r [ −dnv ] [ −C config ] [ modul ...]
modprobe
-V

OPCIÓK

−a, −−all

Minden illeszkedő modult betölt ahelyett, hogy az első sikeres betöltés után megállna.

−c, −−showconfig

Kiírja a jelenleg használt konfigurációt.

−d, −−debug

Információt ír ki a modulcsoportok belső reprezentációjáról.

−k, −−autoclean

Beállítja az "automatikusan törölhető" jelzést a betöltött modulokon. A kernel használja amikor meghívja a modprobe -ot, hogy egy (modulban létező) hiányzó tulajdonságot betöltsön. A −q opciót impliciten tartalmazza a −k. opció. Ezek az opciók automatikusan átadódnak az insmod-nak.

−l, −−list

Kilistázza az illeszkedő modulokat.

−n, −−show

Nem hajtja végre a modul betöltést, csak megmutatja mi történne.

−q, −−quiet

Ne panaszkodjon, ha az insmod-nak nem sikerül betöltenie a modult. Folytassa normálisan, de csendben, a modprobe más tesztlehetőségeivel. Ez az opció automatikusan átadódik az insmod-nak.

−r, −−remove

Modulokat (modulcsoportokat) távolít el, vagy automatikus eltávolítást hajt végre, attól függően, hogy van-e modul megadva a parancssorban.

−s, −−syslog

A szabványos hibakimenet helyett a syslog-ba ír. Ez az opció automatikusan átadódik az insmod-nak.

−t, −−type modultípus

Csak az ilyen típusú modulokat vegye figyelembe.

−v, −−verbose

Kiírja az összes végrehajtott parancsot.

−V, −−version

A modprobe verzióját írja ki.

−C, −−config configfájl

A configfájl -t használja az (opcionális) /etc/modules.conf helyett, hogy megadja a konfigurációt. A MODULECONF környezeti változó is használható arra, hogy kiválasszunk (és felülbíráljunk) egy az alapértelmezett /etc/modules.conf-tól (vagy a kevésbé használt /etc/conf.modules) eltérő konfigurációs fájlt.

LEÍRÁS

A modprobe és a depmod programokat arra szánták, hogy a moduláris Linux kernel menedzselhető legyen minden felhasználó, adminisztrátor és disztribúció-karbantartó számára.

A modprobe egy "Makefile"-szerű függőségi fájlt használ, amelyet a depmod, hozott létre, hogy automatikusan betöltse a szükséges modul(oka)t az előre definiált könyvtárakban található modulok közül.

A modprobe -ot arra használjuk, hogy modulokat töltsünk be, legyen az egyetlen modul, vagy egymástól függő modulok csoportja, vagy olyan modulok, amelyek egy megadott jelzéssel vannak ellátva.

A modprobe automatikusan betölt minden alapvető modult, ami egy modulcsoport számára szükséges, amint a modules.dep függőségi fájlban le van írva. Ha ezen modulok egyikének betöltése sikertelen, az aktuális menettel betöltött egész modulcsoport automatikusan el lesz távolítva.

A modprobe két módon tölthet be modulokat. Az egyik (a teszt mód) megpróbálja egy (a minta által definiált) listából betölteni a modult. A modprobe megáll, amikor az első modul betöltése sikeres. Ezt arra használhatjuk, hogy betöltsünk egy ethernet drivert egy listából.
A modprobe másik működési módja, hogy minden modult betölt a listából. Lásd a PÉLDÁK részt.

A −r, opcióval a modprobe automatikusan eltávolít egy modulcsoportot, az rmmod −r -hez hasonlóan. Figyeljük meg, hogy a modprobe −r használata eltávolítja a nem használt automatikusan betöltött modulokat, és végrehajtja konfigurációs fájlban megadott pre- és post-remove parancsokat is.

A −l opció a −t opcióval kombinálva az elérhető adott típusú modulokat listázza ki.

A −c opció a jelenleg használt konfigurációt írja ki. (alapértelmezett + konfigurációs fájl)

CONFIGURÁCIÓ

A modprobe (és depmod ) viselkedése módosítható az (opcionális) /etc/modules.conf konfigurációs fájllal.
Egy részletesebb leírásért, hogy mit tartalmazhat ez a fájl, vagy a depmod és a modprobe alapértelmezett konfigurációjához lásd a modules.conf(5) oldalt.

Vegyük figyelembe, hogy a pre- és post-remove parancsok NEM lesznek végrehajtva, ha a modult a kerneld távolítja el! Várd meg a készülő perzisztens modul tároló támogatást.
Ha használni akarod a pre- és post-install lehetőségeket, akkor ki kell kapcsolni a kerneld automatikus modul eltávolítási képességét és helyette a következő sorhoz hasonlót kell a crontab-ba tenni (ezt használja kmod rendszer is) hogy automatikus modul eltávolítást végezzünk 2 percenként:
*/2 * * * * test −f /proc/modules && /sbin/modprobe −r

STRATÉGIA

Az ötlet az, hogy a modprobe nézzen bele abba a könyvtárba, ahol a jelenlegi kernelverzióhoz fordított modulokat talál. Ha a modult ott nem találja, akkor a modprobe belenéz abba a könyvtárba, amelyik közös a kernelverzióval. (pl. 2.0, 2.2) Ha még mindig nem találja meg a modult, akkor a modprobe belenéz az alapértelmezett release könyvtárába, stb.

Amikor egy új linuxot installálsz, a modulokat a kiadással (és verzióval) összefüggő alkönyvtárba kell mozgatni. Aztán egy szimbolikus linket kell csinálni erről a könyvtárról az alapértelmezett ("default") könyvtárra.

Minden alkalommal, amikor egy új kernelt fordítasz, a make modules_install parancs létrehoz egy új könyvtárat, de nem változtatja meg a linket.

Ha egy a kernel disztribúciótól független modult kapsz, azt egy verzió-független könyvtárba tedd a /lib/modules alatt.

Ez az alapértelmezett stratégia, ami felübírálható a /etc/modules.conf-al.

PÉLDÁK

modprobe −t net

Betölt egy modult a "net" jelzéssel ellátott könyvtárakból. Minden modult megpróbál betölteni, amíg egy sikeres nem lesz.

modprobe −a −t boot

Minden modult betölt a boot jelzéssel ellátott könyvtárakból.

modprobe slip

Ez megpróbálja betölteni az slhc.o modult, ha még nem volt korábban betöltve, mivel a slip modul az slhc modul funkcionalitását igényli. Ez a függőség a "modules.dep" fájlban van leírva, amely automatikusan létrejön a depmod használatával.

modprobe −r slip

eltávolítja a slip modult. Az slhc modult szintén automatikusan eltávolítja, kivéve ha már egy másik modul is használja (pl. ppp).

FÁJLOK

/etc/modules.conf, (vagy a kevésbé használt /etc/conf.modules)
/lib/modules/*/modules.dep,
/lib/modules/*

LÁSD MÉG

depmod(8), lsmod(8), kerneld(8), ksyms(8), rmmod(8), modules(2)

SZÜKSÉGES PROGRAMOK

depmod(8), insmod(8)

MEGJEGYZÉSEK

A modprobe-nak adott mintákat gyakran "meg kell védeni", hogy a megfelelő kontextusban legyenek kiértékelve.

SZERZŐK

Jacques Gelinas (jack [AT] solucorp.ca)
Bjorn Ekwall (bj0rn [AT] blox.se)

MAGYAR FORDÍTÁS

Böszörményi Zoltán <zboszor [AT] mail.hu>