Depmod - príkaz Linux - Unix Command

názov

depmod - popis popisov závislostí na moduloch jadra načítania

synopse

depmod [-aA] [-ehnqrsuvV] [ -Cfigfile ] [-F kernelsyms ] [-b basedirectory ] [ forced_version ]
depmod [-enqrsuv] [-F kernelsyms ] modul1.o modul2.o ...

popis

Nástrojy depmod a modprobe sú určené na to, aby modulové jadro systému Linux bolo možné spravovať pre všetkých používateľov, administrátorov a správcov distribúcie.

Aplikácia Depmod vytvára súbor závislých na vytváraní súborov založený na symboloch, ktoré nájde v súbore modulov uvedených na príkazovom riadku alebo v adresároch uvedených v konfiguračnom súbore. Tento súbor závislosti je neskôr použitý modprobe na automatické načítanie správneho modulu alebo stohu modulov.

Bežné použitie depmod je zahrnúť linku


/ sbin / depmod -a

niekde v súboroch rc v súbore /etc/rc.d , takže správne závislosti modulov budú k dispozícii ihneď po zavádzaní systému. Upozorňujeme, že voľba -a je teraz voliteľná. Pre bootovacie účely môže byť voľba -q vhodnejšia, pretože to robí depmod tichý o nevyriešených symboloch.

Súbor závislosti je možné vytvoriť aj bezprostredne po zostavení nového jadra. Ak urobíte " depmod -a 2.2.99 ", keď ste prvýkrát zostavili jadro 2.2.99 a jeho moduly, aj napriek tomu, že ste ešte spustili napr. 2.2.98, súbor bude vytvorený na správnom mieste. V tomto prípade však závislosť na jadre nebude zaručená správnosť. Viac informácií o manipulácii nájdete v možnostiach -F , -C a -b .

Pri vytváraní vzťahu medzi modulmi a symbolmi vyexportovanými inými modulmi, depmod neberie do úvahy stav GPL modulov ani exportovaných symbolov. To znamená, že depmod nebude označovať chybu, ak sa modul bez licencie kompatibilnej s GPL nevzťahuje na symbol GPL (EXPORT_SYMBOL_GPL v jadre). Insmod však odmietne vyriešiť iba symboly GPL pre moduly bez GPL, takže skutočné zaťaženie zlyhá.

možnosti

-a , - všetko

Vyhľadajte moduly vo všetkých adresároch špecifikovaných v (voliteľnom) konfiguračnom súbore /etc/modules.conf .

-A , --quick

Porovnať časové značky a v prípade potreby sa správať ako depmod -a . Táto možnosť iba aktualizuje súbor závislostí, ak sa niečo zmenilo.

-e , --errsyms

Zobraziť všetky nevyriešené symboly pre každý modul.

-h , --help

Zobrazte súhrn možností a ihneď ukončíte.

-n , - zobraziť

Napíšte súbor závislosti na stdout namiesto stromu / lib / modules .

-q , --quiet

Povedzte depmodovi, aby ste mlčali a nesťažovali sa na chýbajúce symboly.

-r , --root

Niektorí používatelia zostavujú moduly pod užívateľom typu non-root, potom nainštalujú moduly ako root. Tento proces môže ponechať moduly vo vlastníctve užívateľského rozhrania bez oprávnení root, hoci adresár modulov je vlastnený rootom. Ak je narušená užívateľská oprávnená služba typu non-root, vták môže prepísať existujúce moduly, ktoré vlastní daný používateľský účet, a túto expozíciu používať na spustenie systému root na prístup k root.

Štandardne modutils odmietne pokusy o použitie modulu, ktorý nie je vlastnený rootom. Určenie -r potláča chybu a umožní rootovi načítať moduly, ktoré nie sú vlastnené rootom.

Použitie -r je dôležitá bezpečnostná expozícia a neodporúča sa.

-s , --syslog

Napíšte všetky chybové hlásenia prostredníctvom syslog démona namiesto stderr.

-u , --nebo vyriešená chyba

depmod 2.4 nenastaví návratový kód, ak existujú nejaké nevyriešené symboly. Ďalšie hlavné vydanie modutils (2.5) nastaví návratový kód pre nevyriešené symboly. Niektoré distribúcie vyžadujú nenulový návratový kód v modutils 2.4, ale táto zmena môže spôsobiť problémy pre používateľov, ktorí očakávajú staré správanie. Ak chcete nulový návratový kód v depmod 2.4, zadajte -u . depmod 2.5 ticho ignoruje príznak -u a vždy poskytne nenulový návratový kód pre nevyriešené symboly.

-v , - verbose

Zobrazí sa názov každého modulu počas jeho spracovania.

-V , --version

Zobraziť verziu depmodu .

Nasledujúce možnosti sú užitočné pre ľudí spravujúcich distribúcie:

-b basedirectory , --basedir basedirectory

Ak sa stromový adresár / lib / moduly obsahujúci podstromy modulov presúva niekde inde, aby sa mohli spracovávať moduly pre iné prostredie, volba -b informuje depmod, kde nájsť presunutý obrázok stromu / lib / modules . Odkazy na súbory v výstupnom súbore depmod, ktorý je zostavený, modules.dep , neobsahujú cestu k zariadeniu. To znamená, že keď sa strom súborov presunie späť z databázy / lib / modules do / lib / modules v konečnej distribúcii, všetky odkazy budú správne.

-C configfile , --config configfile

Použite configfile súboru namiesto /etc/modules.conf . Premenná prostredia MODULECONF sa môže použiť aj na výber iného konfiguračného súboru zo štandardnej /etc/modules.conf (alebo /etc/conf.modules (zastaraný)).

Pri premennej prostredia

UNAME_MACHINE je nastavený, modutils použije svoju hodnotu namiesto poľa stroja z príkazu uname (). Používa sa predovšetkým pri zostavovaní 64 bitových modulov v 32-bitovom používateľskom priestore alebo naopak, nastavte UNAME_MACHINE na typ vytvorených modulov. Súčasné moduly nepodporujú moduly plného krížového zostavovania, je obmedzené na výber medzi 32 a 64 bitovými verziami hostiteľskej architektúry.

-F kernelsyms , --fileyms kernelsyms

Pri vytváraní súborov závislostí pre iné jadro ako súčasné jadro je dôležité, aby depmod používal správnu sadu jadrových symbolov na vyriešenie odkazov na jadro v každom module. Tieto symboly môžu byť buď kópiou System.map z iného jadra, alebo kópiu výstupu z / proc / ksyms . Ak vaše jadro používa verzované symboly, najlepšie je použiť kópiu výstupu / proc / ksyms , pretože tento súbor obsahuje symbolové symboly jadra. Môžete však použiť System.map aj s verzovanými symbolmi.

konfigurácia

Chovanie depmod a modprobe môže byť upravené pomocou (voliteľného) konfiguračného súboru /etc/modules.conf .
Pozri modprobe (8) a modules.conf (5) pre kompletný popis.

stratégia

Zakaždým, keď kompilujete nové jadro, príkaz " make modules_install " vytvorí nový adresár, ale predvolené sa nezmení.

Keď získate modul, ktorý nesúvisí s distribúciou jadra, mali by ste ho umiestniť do jedného z adresárov nezávislých od verzie pod / lib / modules .

Toto je predvolená stratégia, ktorú možno prevziať v súbore /etc/modules.conf .

Pozri tiež

lsmod (8), ksyms (8)

Dôležité: Pomocou príkazu man ( % man ) môžete zistiť, ako sa príkaz používa vo vašom konkrétnom počítači.