Provided by: manpages-hu_20010119-4_all bug

NÉV

       insmod - betölthető kernel modult tölt be

ÁTTEKINTÉS

       insmod   [-fkmpqrsxXvyY]   [-P prefix]   [-o modul_név]   objektum_fájl
       [ symbol=value ... ]

LEÍRÁS

       Insmod Betölt egy betölthető kernelmodult a futó kernelbe.

       Az insmod parancs megpróbál hozzáfűzni egy modult a futó kernelhez úgy,
       hogy  feloldja  annak  minden szimbólumát a kernel exportált szimbólum-
       táblázatából.

       Ha az objektum fájl neve kiterjesztés nélkül  adott,  akkor  az  insmod
       parancs  alapértelmezett  alkönyvtárakban  fogja  keresni  a modult.  A
       MODPATH környezeti változó használható ennek felülbírálására.   Ha  egy
       modul  konfigurációs  fájl (pl. /etc/modules.conf) létezik, akkor annak
       tartalma fogja felülbírálni a MODPATH-ban definiált elérési utakat.

       A  MODULECONF  környezeti  változó  is  használható   arra,   hogy   az
       alapértelmezett  /etc/modules.conf  -tól  (vagy  /etc/conf.modules,  ez
       utóbbi használata nem javasolt) eltérő konfigurációs fájlt  válasszunk.
       Ez a környezeti változó az összes fenti definíciót felülbírálja.

   OPCIÓK
       -f     Megpróbálja  betölteni  a modult akkor is, ha a futó kernel és a
              modul kernelverziója nem egyezik meg.

       -k     Az automatikus törlés kapcsolót állítja be  a  modulban.  Ezt  a
              kerneld(8) használja, hogy eltávolítsa az egy ideje nem használt
              modulokat -- rendszerint egy perc eltelte után.

       -m     Egy betöltési térképet ír ki, megkönnyítve a modul hibakeresését
              egy kernelpánik esetén.

       -o module_name
              Expliciten  megnevezi  a  modult ahelyett, hogy az objektum fájl
              nevéből származtatná.

       -p     Teszteli a modult, hogy sikeresen  be  lehetne-e  tölteni.  Ebbe
              beleértendő   az   objektum  megkeresése  a  modul-útvonalon,  a
              verziószám ellenőrzése és a szimbólumok feloldása.

       -q     Nem  írja  ki  a  feloldhatatlan  szimbólumok   listáját.    Nem
              panaszkodik   verzióeltérésről.   A  problémát  csak  az  insmod
              visszatérési értéke jelzi.

       -r     Egyes felhasználók nem root azonosítóval fordítják a  modulokat,
              majd  root-ként installálják azokat. Ezen művelet után a modulok
              tulajdonosa egy nem root felhasználó lesz, még  ha  a  modulokat
              tartalmazó  könyvtár  root  tulajdonú  is.  Ha  ezt  a  nem root
              azonosítót  feltörik,  a   behatoló   felülírhatja   az   általa
              tulajdonolt  létező  modulokat,  és ezt felhasználhatja root jog
              szerzésére.

              Alapértelmezés  szerint  a  modutils  programok  visszautasítják
              olyan  modulok használatát, amelyeknek nem root a tulajdonosa. A
              -r megadása ezt a hibát elnyomja, és megengedi a root-nak,  hogy
              nem root tulajdonosú modulokat töltsön be.

              A -r használata komoly biztonsági probléma, és nem ajánlott.

       -s     A terminál helyett mindent a syslog(3)-ba ír.

       -v     Bőbeszédűbb lesz.

       -X, -x Exportáld (-X), illetve ne exportáld a modul külső szimbólumait.
              Alapértelmezés szerint a szimbólumokat exportálja. Ez  az  opció
              csak  akkor  hatásos, ha maga a modul nem exportálja explicite a
              saját szimbólumtábláját, így ez egy ritkábban használt opció.

       -Y, -y Hozzáadja, illetve nem adja hozzá  a  ksymoops  szimbólumokat  a
              ksyms-hez.  Ezeket a szimbólomukat a ksymoops program használja,
              jobb  hibakeresést  lehetővé  téve,  ha  egy  Oops  történik   a
              modulban.   Alapértelmezés   szerint   a   ksymoops  szimbólumok
              definiálódnak. Ez az opció független a -X/-x opcióktól.

              A ksymoops szimbólumok  kb.  260  byte-al  növelik  a  betöltött
              modult.   Használd inkább az alapértelmezést és a pontosabb Oops
              hibakeresés lehetőségét, kivéve ha tényleg kevés a kernelmemória
              és a ksyms-t próbálod a minimális méretére összehúzni.

       -P prefix
              Ez  az opciót használható verzióval ellátott modulokhoz SMP vagy
              bigmem kernelek mellé, mivel az ilyen modulok egy extra prefixet
              tartalmaznak  a  szimbólumaik  nevében.   Ha  a kernel szimbólum
              verzióval volt fordítva, akkor az insmod automatikusan felderíti
              ezt  a prefixet a "get_module_symbol" definíciójából, ami minden
              olyan  kernelben  létezik,  amelyik  modulokat  támogat.  Ha   a
              kernelben  nincs  modul  verzió,  de a modul szimbólum verzióval
              volt fordítva, akkor  a  felhasználónak  meg  kell  adnia  a  -P
              opciót.

   MODUL PARAMÉTEREK
       Néhány    modul    elfogad    betöltéskor    paramétereket,   melyekkel
       testreszabható a működésük. Ezek a paraméterek gyakran I/O címek és IRQ
       számok,  amelyek  gépról-gépre  változnak,  és  nem  lehet a hardverből
       megállapítani.

       A 2.0-ás sorozatú kernelekhez fordított moduloknál bármilyen egész vagy
       karakteres  mutató szimbólum kezelhető paraméterként és módosítható.  A
       2.1-es kernelektöl kezdve a paraméter szimbólumok expliciten meg vannak
       jelölve.    Továbbá   típusinformációt   is   tartalmaznak   az   érték
       ellenőrzéséhez betöltéskor.

       Egész  típus  esetén  minden  érték  lehet  decimális,   oktális   vagy
       hexadecimális,  pl.:  17,  021  vagy  0x11.  A  tömbelemeket  vesszővel
       elválasztott sorozattal adhatjuk meg; egyes elemek kihagyhatók az érték
       meg nem adásával.

       A  2.0-ás  sorozatú modulokban azok az értékek, amelyek nem számjeggyel
       kezdődnek, karakterláncnak tekintendőek.  2.1-től  kezdve  a  paraméter
       típusa  határozza meg azt, hogy az értéket karakterláncként értelmezze-
       e.  Ha az érték macskakörömmel (") kezdődik, akkor az érték a  C  nyelv
       szerint  lesz  értelmezve,  escape-szekvenciákkal, stb. Figyelembe kell
       venni, hogy héj (shell prompt) értelmezi  a  macskakörmöt,  ezért  "meg
       kell védeni".

   KSYMOOPS TÁMOGATÁS
       Modulok használata esetén a kernel Oops hibakeresésének megkönnyítésére
       az insmod alapértelmezésként hozzáad néhány  szimbólumot  a  ksyms-hez,
       lásd   a   -Y  opciót.  Ezek  a  szimbólumok  "__insmod_modulename_"-el
       kezdődnek. A modulename szükséges ahhoz, hogy egyedileg  azonosítsuk  a
       szimbólumokat,  és  lehetséges  ugyanazt  az objektumfájlt többször más
       néven betölteni.  A jelenleg definiált szimbólumok

       __insmod_modulename_Oobjectfile_Mmtime_Vversion

       Az objectfile a  fájl  neve,  amelyből  az  objektum  betöltődött.   Ez
       biztosítja,  hogy  a  ksymoops  egyeztetni  tudja  a  kódot a megfelelő
       objektummal.  mtime  annak  a  fájlnak  az   utolsó   módosítás   ideje
       hexadecimális  értékben, 0 ha a stat() hibát jelzett.  version a kernel
       verziója, amelyhez a modult fordították, -1 ha nem nincs verziószám.  A
       _O szimbólumnak ugyanaz a kezdőcíme, mint a modul fejlécének.

       __insmod_modulename_Ssectionname_Llength

       Ez  a szimbólum a kiválasztott ELF szekciók elején jelenik meg, amelyek
       jelenleg .text, .rodata, .data és .bss. Csak akkor jelenik meg,  ha  az
       adott szekciónak nullánál nagyobb a mérete.  sectionname az ELF szekció
       neve, length a szekció hossza decimálisan. Ezek a szimbólumok segítik a
       ksymoops-ot    olyan   szekciók   feltérképezésében,   ahol   nincsenek
       hozzáférhető szimbólumok.

       A kernel Oops hibakeresés másik problémája, hogy  a  /proc/ksyms  és  a
       /proc/modules   tartalma   változhat   az   Oops  és  a  hiba  logjának
       feldolgozása között. Ennek áthidalására, ha létezik a /var/log/ksymoops
       könyvtár,  akkor  insmod és rmmod automatikusan átmásolja a /proc/ksyms
       és   /proc/modules   fáljokat   a   /var/log/ksymoops   könyvtárba    a
       `date +%Y%m%d%H%M%S`    prefix-szel.     A    rendszer   adminisztrátor
       megmondhatja a ksymoops-nak, hogy melyik "pillanatfelvételt"  használja
       amikor  egy  Oops-t  debuggol.  Nincs olyan opció, ami letiltaná ezt az
       automatikus átmásolást, ha nem akarjuk,  hogy  megtörténjen,  akkor  ne
       hozzuk  létre  a  /var/log/ksymoops könyvtárat.  Ha a könyvtár létezik,
       akkor a tulajdonosa root, és a joga 644 vagy 600 kell hogy  legyen,  és
       az  alábbi  script  naponta  futtatandó. A script insmod_clean_ksymoops
       néven található meg.

         #!/bin/sh
         # Törli a 2 napnál régebbi ksyms és modules mentéseket.
         if [ -d /var/log/ksymoops ]
         then
              set -e
              # Biztosítjuk, hogy mindig van legalább egy verzió
              d=`date +%Y%m%d%H%M%S`
              cp -a /proc/ksyms /var/log/ksymoops/${d}.ksyms
              cp -a /proc/modules /var/log/ksymoops/${d}.modules
              find /var/log/ksymoops -type f -atime +2 -exec rm {} \;
         fi

LÁSD MÉG

       rmmod(8),  modprobe(8),  depmod(8),  lsmod(8),  ksyms(8),   modules(2),
       genksyms(8), kerneld(8), ksymoops(kernel).

TÖRTÉNELEM

       A modul támogatást először Anonymous készítette el.
       A kezdeti Linux változat: Bas Laarhoven <bas@vimec.nl>
       A 0.99.14-es verzió: Jon Tombs <jon@gtex02.us.es>
       Kibővítette: Bjorn Ekwall <bj0rn@blox.se>
       Az eredeti ELF támogatás: Eric Youngdale <eric@aib.com>
       Újraírta a 2.1.17-es kernelhez Richard Henderson <rth@tamu.edu>
       Bővítés   a  modutils-2.2.*-hez:  Bjorn  Ekwall  <bj0rn@blox.se>,  1999
       márciusa
       Ksymoops támogatás: Keith Owens <kaos@ocs.com.au>, 1999 májusa

MAGYAR FORDÍTÁS

       Böszörményi Zoltán <zboszor@mail.externet.hu>
       Narancs v1 <narancs1@externet.hu>