Depmod - Linuksa Komando - Unikso Komando

Nomo

depmod - manipulas dependecajn priskribojn por ŝarĝeblaj kernaj moduloj

Sinopsis

depmod [-aA] [-ehnqrsuvV] [-C configfile ] [-F kernelsyms ] [-b- bazirektorio ] [ forced_version ]
depmod [-enqrsuv] [-F kernelsyms ] module1.o module2.o ...

Priskribo

La servoj kaj modprobaj utilecoj intencas fari Linulan modularan kernon regebla por ĉiuj uzantoj, administrantoj kaj dissendantoj.

Depmod kreas "dosierojn de dependeco" "bazita sur la simboloj kiujn ĝi trovas en la aro de moduloj menciitaj sur la komandlinio aŭ el la dosierujoj specifitaj en la agorda dosiero. Ĉi tiu dependa dosiero estas poste uzita per modprobe por aŭtomate ŝarĝi la ĝustan modulon aŭ stack de moduloj.

La normala uzo de depmod estas inkludi la linion


/ sbin / depmod -a

ie en la rc-dosieroj en /etc/rc.d , por ke la ĝentilaj moduloj dependos tuj post ekkuro de la sistemo. Notu, ke la opcio -a nun estas laŭvola. Por plibonigaj celoj, la opcio -q eble pli taŭgas pro tio, ke tio malkaŝas silenton pri senkompletaj simboloj.

Ĝi ankaŭ eblas krei la dosieron de dependeco tuj post kompili novan kernon. Se vi faros " depmod -a 2.2.99 " kiam vi unue kompilis kernel 2.2.99 kaj ĝiajn modulojn, dum daŭre funkcias ekz. 2.2.98, la dosiero estos kreita en la ĝusta loko. Tamen, en ĉi tiu kazo, la dependecoj de la kerno ne estos korektataj. Vidu la eblojn -F , -C kaj -b supre por pliaj informoj pri pritraktado de ĉi tio.

Dum konstruado de la rilato inter moduloj kaj la simboloj eksportitaj de aliaj moduloj, depmod ne konsideras la GPL-staton de la moduloj nek el la eksportitaj simboloj. Tio estas, depmod ne flagos eraron se modulo sen GPL-kongrua permesilo aludas al GPL-sola simbolo (EXPORT_SYMBOL_GPL en la kerno). Tamen insomod rifuzos solvi GPL nur simbolojn por ne-GPL-moduloj tiel la reala ŝarĝo malsukcesos.

Opcioj

-a , -all

Serĉu modulojn en ĉiuj dosierujoj specifitaj en la (nedeviga) agorda dosiero /etc/modules.conf .

-A , --ĉu

Komparu dosierojn kaj, se necese, agu kiel depmod-a . Ĉi tiu opcio nur ĝisdatigas la dependan dosieron se io ŝanĝiĝis.

-e , -errsimoj

Montru ĉiujn senkompletajn simbolojn por ĉiu modulo.

-h , - helpo

Montru resumon de ebloj kaj tuj eliras.

-n , - rigardu

Skribu la dependecan dosieron en stdout anstataŭ en la / lib / moduloj arbo.

-q , -quiet

Diru, ke vi silentu kaj ne plendu pri mankantaj simboloj.

-r , - reto

Iuj uzantoj kompiligas modulojn sub ne-radika uzanto tiam instali la modulojn kiel root. Ĉi tiu procezo povas lasi la modulojn posedataj de la ne-radika uzanto, kvankam la dosierujo de moduloj estas posedata de radiko. Se la ne-radika uzanto estas kompromitita, entrudulo povas anstataŭigi ekzistantajn modulojn posedataj de tiu uzanto kaj uzu ĉi tiun ekspozicion por eksplodi al radika aliro.

Defaŭlte, modutiloj malakceptos provojn uzi modulon, kiu ne estas posedata de radiko. Specifa -r elstrekos la eraron kaj permesos radikon ŝarĝi modulojn, kiuj ne estas posedataj de radiko.

Uzo de -r estas grava sekureca ekspozicio kaj ne rekomendas.

-s , --syslog

Skribu ĉiujn erarajn mesaĝojn per la syslog-demono anstataŭ stderr.

-u , --unresolved-eraro

depmod 2.4 ne agordas kodon revenanta kiam estas iuj ne solvitaj simboloj. La sekva plej granda eldono de modutiloj (2.5) starigos revenan kodon por solvitaj simboloj. Kelkaj distribuoj deziras ne-nula revenan kodon en modutiloj 2.4 sed tiu ŝanĝo povus kaŭzi problemojn por uzantoj, kiuj atendas la malnovan konduton. Se vi volas kodon de ne-nulo en depmod 2.4, specifu -u . depmod 2.5 silentos ignori la -u- flagon kaj ĉiam donos ne- nulalan rondan kodon por solvitaj simboloj.

-v , - verbose

Montru la nomon de ĉiu modulo, kiam ĝi estas procesita.

-V , --versio

Montru la version de depmod .

La jenaj opcioj estas utilaj por homoj administrantaj distribuoj:

-b- bazirejnektorio , - bazita subreteretejo

Se la dosierujo / lib / moduloj enhavantaj la sub-arbojn de moduloj estas movita aliloke por manipuli modulojn por malsama medio, la -b- opcio informas, kie trovi la movitan bildon de la / lib / moduloj . La dosier-referencoj en la dosiero de eliro de depododoj, kiuj estas konstruitaj, moduloj.dep , ne enhavos la vojon de direkto de direkto. Ĉi tio signifas, ke kiam la dosiero arbo reiras de baseirectory / lib / moduloj en / lib / modulojn en la fina dissendo, ĉiuj referencoj estos ĝustaj.

-C configfile , --config configfile

Uzu la dosieron configfile anstataŭ /etc/modules.conf . La medio-variablo MODULECONF ankaŭ povas esti uzata por elekti alian agordon-dosieron de la defaŭlta /etc/modules.conf (aŭ /etc/conf.modules (senpaga)).

Kiam medio variablo

UNAME_MACHINE estas agordita, modutiloj uzos ĝian valoron anstataŭ la maŝina kampo de la uname () syscall. Ĉi tio estas plejparte de uzo kiam vi kunmetas 64-bitajn modulojn en 32-bita uzanto-spaco aŭ viceversa, agordu UNAME_MACHINE al la tipo de la moduloj konstruitaj. Nunaj modutiloj ne subtenas plenan krucon-konstruan reĝimon por moduloj, ĝi estas limigita al elektado inter 32 kaj 64 bitaj versioj de la gastigada arkitekturo.

-Faj kernoj , --filojimaj kernoj

Kiam konstruado de dependaj dosieroj por malsama kerno ol nuntempe funkcianta kerno, gravas, ke depmod uzas la ĝustan aron de kernaj simboloj por solvi la kernajn referencojn en ĉiu modulo. Ĉi tiuj simboloj povas esti kopio de System.map el la alia kerno, aŭ kopio de la eligo el / proc / ksyms . Se via kerno uzas versionajn simbolojn, plej bone estas uzi kopion de la / proc / ksyms- eligo, ĉar tiu dosiero enhavas la simbolajn versiojn de la kernaj simboloj. Tamen vi povas uzi Sistemon.map eĉ kun versionigitaj simboloj.

Agordo

La konduto de depmod kaj modprobe povas esti ĝustigita per la (nedeviga) agorda dosiero /etc/modules.conf .
Vidu modprobe (8) kaj modules.conf (5) por kompleta priskribo.

Strategio

Ĉiufoje kiam vi kunmetas novan kernon, la komando " make modules_install " kreos novan dosierujon, sed ne ŝanĝos la defaŭltan.

Kiam vi ricevas modulon, kiu ne rilatas al la kerno-distribuo, vi devas loki ĝin en unu el la sendependaj dosierujoj de la versio sub / lib / moduloj .

Ĉi tiu estas la defaŭlta strategio, kiu povas esti malpermesita en /etc/modules.conf .

Vidu ankaŭ

lsmod (8), ksyms (8)

Grava: Uzu la komandon ( % viro ) por vidi kiel komando estas uzata en via komputilo.