Lainos / Ofin UNIX: insmod

Awọn Lainos / UNIX aṣẹ insmod npese kan loadable module ninu ekuro nṣiṣẹ. insmod gbìyànjú lati sopọ mọ module kan sinu ekuro ti nṣiṣẹ nipa ipinnu gbogbo awọn aami lati inu tabili tabili okeere ti ekuro.

Ti orukọ faili module ko ba ni laisi awọn iwe-itọnisọna tabi itẹsiwaju, insmod yoo wa fun module ni awọn iwe-aṣẹ aiyipada awọn wọpọ. MODPATH iyipada ayika le ṣee lo lati daabobo aiyipada yii. Ti faili iṣeto ilọsiwaju gẹgẹbi /etc/modules.conf wa, yoo pari awọn ọna ti a sọ ni MODPATH .

MODULECONF agbegbe ayika tun le lo lati yan faili ti o yatọ si lati aiyipada /etc/modules.conf (tabi /etc/conf.modules (deprecated)). Iyipada agbegbe yii yoo da gbogbo awọn itumo loke.

Nigbati a ṣeto ṣeto UNAME_MACHINE ayika ayika, awọn ọṣọ yoo lo iye rẹ dipo aaye aaye ẹrọ lati uname () syscall. Eyi jẹ lilo pupọ nigba ti o ba n ṣajọpọ awọn modulu 64-bit ni aaye olumulo olumulo 32- aaya tabi ni idakeji, ṣeto UNAME_MACHINE si iru awọn modulu naa. Awọn modutils lọwọlọwọ ko ni atilẹyin ipo agbelebu pipe fun awọn modulu, o ti ni opin si yiyan laarin awọn iwọn 32- ati awọn ẹya 64-bit ti iṣeto ile-iṣẹ.

Awọn aṣayan

-e persist_name , --persist = persist_name

Npe ibi ti eyikeyi data ti o tẹsiwaju fun module naa ti ka lati inu fifuye ati kọ si igba ti a ba gbejade lẹsẹkẹsẹ ti module yii. A ṣe akiyesi aṣayan yi laifọwọyi ti module naa ko ni data ti o tẹsiwaju. Awọn data ti o pọju nikan ni kika nipasẹ insmod ti aṣayan yi ba wa, nipa aiyipada insmod ko ṣe ilana data jigijigi.

Gẹgẹbi fọọmu kukuru , -e "" (okun to ṣofo) ti tumọ nipasẹ insmod gẹgẹbi iye ti o tẹsiwaju gẹgẹbi a ti sọ ni modules.conf , tẹle awọn orukọ ti module ti o jẹ ibatan si ọna wiwa module ti a ri ni, dinku eyikeyi trailing ".gz", ".o" tabi ".mod". Ti modules.conf sọ " persistdir = " (ie persistdir jẹ aaye ti o ṣofo) lẹhinna a fi ọwọ gba ifojusi kukuru yii. (Wo modules.conf (5).)

-f , --force

Igbiyanju fifuye module paapa ti ikede ti ekuro nṣiṣẹ ati ikede ti ekuro fun eyiti module naa ti kojọpọ ko baramu. Eyi nikan ṣe idojukọ ayẹwo ayẹwo ekuro, ko ni ipa lori awọn sọwedowo ami aami. Ti awọn aami aami ninu module ko baamu ekuro naa lẹhinna ko si ọna lati fi agbara si insmod lati fifuye module naa.

-h , --help

Ṣe afihan awọn akojọ aṣayan ati lẹsẹkẹsẹ jade.

-k , - iwoyi

Ṣeto atẹgun-aifọwọyi-ori lori module. Aami yii yoo ṣee lo nipasẹ kerneld (8) lati yọ awọn modulu ti a ko ti lo ni akoko diẹ - nigbagbogbo ni iṣẹju kan.

-L , - ṣii

Lo agbo (2) lati dena awọn irufẹ kanna ti module kanna.

-m , --map

Ṣiṣe map ti o pọju lori stdout, o mu ki o rọrun lati daabobo module ni iṣẹlẹ ti ipọnju ekuro.

-n , --noloadload

Idaraya kekere, ṣe ohun gbogbo afi fifuye module sinu ekuro. Ti o ba beere fun nipasẹ -M tabi -O , ṣiṣe naa yoo gbe maapu tabi faili blob. Niwọn igba ti a ko ti ṣe igbesẹ module naa, ojulowo iṣiro kernel gangan ko jẹ aimọ bii map ati faili blob da lori adirẹsi adani ti kojọpọ ti 0x12340000.

-o module_name , --name = name_name

Fi orukọ ti a sọ lorukọ orukọ naa, dipo ki o gba orukọ lati orukọ ipilẹ ti faili faili orisun.

-O blob_name , --blob = blob_name

Fi nkan alakomeji silẹ ni blob_name . Esi naa jẹ blob alakomeji (kii ṣe awọn akọle ELF) ti o nfihan gangan ohun ti a gbe sinu ekuro lẹhin igbesẹ ati gbigbe si apakan. Aṣayan -m ni a ṣe iṣeduro lati gba maapu ti ohun naa.

-p , --probe

Ṣawari awọn module lati rii boya o le ni ifijišẹ ti kojọpọ . Eyi pẹlu gbigba faili faili ni ọna module, ṣayẹwo awọn nọmba ikede, ati yan awọn aami. Ko ṣe ṣayẹwo awọn atungbe tabi ko ṣe agbejade tabi faili faili.

-Pfiiye , --prefix = ìpele

A le lo aṣayan yi pẹlu awọn modulu ti a ṣe jade fun SMP tabi ekuro nlamem, niwon iru awọn modulu ni afikun alaye ti a fi kun ni orukọ aami wọn. Ti a ba kọ ekuro pẹlu awọn aami aami kan nigbana insmod yoo yọ akọọlẹ naa laifọwọyi lati definition ti "get_module_symbol" tabi "inter_module_get", ọkan ninu eyi ti o gbọdọ tẹlẹ ninu eyikeyi ekuro to ṣe atilẹyin awọn modulu. Ti ekuro ko ni awọn aami aami ṣugbọn a ti kọ module naa pẹlu awọn aami aami kan lẹhinna o gbọdọ jẹ ki olumulo naa pese P.

-q , --quiet

Ma ṣe tẹjade akojọ kan ti awọn ami ti ko ni iyasọtọ. Maṣe ṣiro nipa iṣiro ti ikede. Iṣoro naa yoo han nikan ni ipo ipade ti insmod .

-r , - root

Diẹ ninu awọn olumulo n ṣajọpọ awọn modulu labẹ apani ti kii ṣe-root lẹhinna fi awọn modulu sori ẹrọ gẹgẹbi gbongbo. Ilana yii le fi awọn modulu ti o jẹ ti olumulo ti kii ṣe gbongbo, ti o tilẹ jẹ pe itọsọna modulu jẹ ti gbongbo. Ti o ba jẹ pe olumulo ti ko gbongbo ni ipalara, aṣoju kan le ṣe atunṣe awọn modulu ti o wa tẹlẹ nipasẹ ti olumulo naa ati lo ifihan yii si bootstrap titi o fi gba wiwọle.

Nipa aiyipada, awọn apẹrẹ yoo kọ awọn igbiyanju lati lo module ti ko ni ipilẹ. Ṣeto--r yoo pa awọn ayẹwo ati ki o gba gbongbo lati gbe awọn modulu ti kii ṣe ipilẹ. Akiyesi: iye aiyipada fun wiwa root le ṣee yipada nigbati a ba tunto modutils.

Lilo ti -r lati mu iṣayẹwo root tabi eto aiyipada si "ko si gbongbo root" ni akoko iṣeto ni ifihan iṣoro pataki ati pe ko ṣe iṣeduro.

-s , - syslog

Ohun gbogbo lati mu syslog (3) dipo ebute naa.

-S , --kallsyms

Fi agbara mu awọn module ti a ti kojọpọ lati ni data kallsyms , paapaa ti ekuro ko ni atilẹyin. Aṣayan yii jẹ fun awọn ọna šiše kekere ti a ti gbe ekuro laisi data kallsyms ṣugbọn ti yan awọn modulu nilo kallsyms fun n ṣatunṣe aṣiṣe. Aṣayan yii jẹ aiyipada lori Red Hat Linux.

-v , --verbose

Jẹ verbose.

-V , - iyipada

Ṣe afihan ti ikede insmod .

-X , --export ; -x , --noexport

Ṣe ati ma ṣe gbe gbogbo awọn ami ita ti ita lọ, lẹsẹsẹ. Iyipada jẹ fun awọn aami lati wa ni okeere. Aṣayan yii jẹ išišẹ ti o ba jẹ pe module naa ko fi ọja-iṣowo ti ara rẹ han gbangba, ati bayi o ti pa.

-Y , --ksymoops ; -y , --noksymoops

Ṣe ki o ma ṣe fi awọn aami ksymoops si ksyms. Awọn aami wọnyi ni a lo nipasẹ ksymoops lati pese iṣaṣiṣe ti o dara ju ti o ba wa ni Igbesoke ni yi module. Iyipada ni fun awọn aami- ksymoops lati wa ni asọye. Aṣayan yii jẹ ominira fun awọn aṣayan -X / -x .

Awọn aami aami- ksymoops fi to awọn ọgọrun 260 fun ikojọpọ module. Ayafi ti o ba wa ni kukuru lori aaye ekuro ati pe o n gbiyanju lati dinku ksyms si iwọn to kere julọ, ya aiyipada naa ati ki o gba diẹ sii deede Awọn igbesoke opo. Awọn aami aami- ksymoops ni a nilo lati fipamọ data isodipupo ilọsiwaju.

-N , --numeric-nikan

Nikan ṣayẹwo apa nomba ti ikede module ti o lodi si iṣiro ekuro, ie maṣe gba EXTRAVERSION nigbati o ba pinnu boya module kan ba jẹ si ekuro kan. A ṣeto ọkọ yi laifọwọyi fun ekuro 2.5 siwaju, o jẹ aṣayan fun awọn kernels sẹyìn.

Awọn ipo Ilana

Diẹ ninu awọn modulu gba awọn fifaye akoko fifuye lati ṣe iṣiṣẹ wọn. Awọn ifilelẹ wọnyi jẹ igbagbogbo I / O ati awọn nọmba IRQ ti o yatọ lati ẹrọ si ẹrọ ati pe a ko le pinnu lati inu ẹrọ.

Ni awọn modulu ti a ṣe fun awọn kernels ti ikede 2.0, eyikeyi nọmba tabi nọmba alakoso aami jẹ le ṣe abojuto bi ipilẹ ati ki o tunṣe. Bibẹrẹ ninu awọn kernels ti a ṣe lẹsẹsẹ 2.1, awọn aami ti wa ni apejuwe ti o ni kiakia bi awọn ifilelẹ ki o le ṣe iyipada pato pato. Pẹlupẹlu, tẹ alaye ti a pese fun ṣayẹwo awọn iye ti a pese ni akoko fifuye.

Ni ọran ti awọn nọmba okidi, gbogbo awọn iye le jẹ ni eleemewa, octal tabi hexadecimal ni la C: 17, 021 tabi 0x11. Awọn ohun elo amọdaju jẹ pàtó ti a yàtọtọ nipasẹ awọn aami idẹsẹ. Awọn ohun elo le ṣee ni idaduro nipasẹ omitting iye.

Ni awọn ọna modẹmu 2.0, iye ti ko bẹrẹ pẹlu nọmba kan ni a kà awọn gbolohun ọrọ. Bẹrẹ ni 2.1, alaye iru alaye ti o fihan boya lati ṣe itumọ iye naa bi okun. Ti iye ba bẹrẹ pẹlu awọn fifun ni ilopo ( " ), okun naa ni a tumọ bi C, saaba awọn abajade ati gbogbo. Maa ṣe akiyesi pe lati igbasọ ikarahun naa, awọn fifa fun ara wọn le nilo lati ni idaabobo lati itumọ akọle.

Awọn awoṣe ti a fun ni aṣẹ GPL ati Awọn aami

Bibẹrẹ pẹlu ekuro 2.4.10, awọn modulu yẹ ki o ni iwe-aṣẹ iwe-ašẹ, ti a sọ nipa lilo MODULE_LICENSE () . Ọpọlọpọ awọn gbolohun ọrọ ni a mọ bi ibaramu GPL; eyikeyi koodu iwe-aṣẹ miiran tabi ko si iwe-aṣẹ eyikeyi tumọ si pe module naa ni a ṣe mu bi oniṣowo.

Ti ekuro naa ṣe atilẹyin fun igbasilẹ / pan / sys / kernel / flag flag lẹhinna insmod yoo TABI akọle ti o ni '1' nigbati o ba nṣe ikojọpọ laisi iwe-ašẹ GPL. A ti funni ni ikilọ ti ekuro ba ṣe atilẹyin fun ikun ati ti module kan ti ṣajọ laisi iwe-aṣẹ. A fun ikilọ nigbagbogbo fun awọn modulu ti o ni MODULE_LICENSE () ti kii ṣe ibamu GPL, paapaa lori awọn kernels ti ko dagba ti ko ṣe atilẹyin fun ikun. Eyi maa dinku awọn ikilo nigbati a ba lo awọn modutil titun lori awọn ekuro agbalagba.

insmod -f (agbara) yoo TABI awọn asia ti o ni "2" lori awọn kernels ti o ṣe atilẹyin fun ikun. Nigbagbogbo o ni ikilọ.

Diẹ ninu awọn oludari kernel nilo pe aami ti a firanṣẹ nipasẹ koodu wọn gbọdọ nikan lo pẹlu awọn modulu pẹlu iwe-aṣẹ ibamu GPL. Awọn ami wọnyi ti wa ni okeere nipasẹ EXPORT_SYMBOL_GPL dipo deede EXPORT_SYMBOL . Awọn aami GPL-nikan ti a fi ranṣẹ nipasẹ ekuro ati nipasẹ awọn modulu miiran ni o han nikan si awọn modulu pẹlu iwe-aṣẹ ibaramu GPL, awọn aami wọnyi han ni / proc / ksyms pẹlu ipinju ti ' GPLONLY_ '. insmod kọ Gfilohun GPLONLY_ lori awọn aami nigbati o n ṣajọwe module GPL ti a fun ni aṣẹ lati jẹ ki module naa kan tọka si orukọ aami aami deede, laisi ipilẹṣẹ. Awọn aami nikan ti GPL ko ni wa si awọn modulu laisi iwe-aṣẹ ibamu GPL, eyi pẹlu awọn modulu lai si iwe-aṣẹ ni gbogbo.

Iranlọwọ Ksymoops

Lati ṣe iranlọwọ pẹlu n ṣatunṣe aṣiṣe ti ekuro Ni imurasilẹ nigbati o ba nlo awọn modulu, awọn aṣiṣe admod lati ṣe afikun awọn aami si ksyms, wo aṣayan -Y . Awọn aami wọnyi bẹrẹ pẹlu __insmod_modulename_ . A nilo orukọ olupin lati ṣe awọn aami oto. O jẹ ofin lati gbe nkan kanna naa ju lẹẹkan lọ labẹ awọn oriṣi awọn module module. Lọwọlọwọ, awọn aami apejuwe jẹ:

__insmod_modulename_Oobjectfile_Mmtime_Vversion

objectfile jẹ orukọ ti faili ti a gba nkan naa lati. Eyi ṣe idaniloju pe ksymoops le ṣe deede koodu si ohun ti o tọ. mtime jẹ akoko timestamp ti o gbẹhin lori faili naa ni hex, odo ti stat ba kuna. ti ikede jẹ ẹyà ekuro ti a ti ṣajọ module naa fun, -1 ti ko ba si ikede kan wa. Awọn aami _O ni ibẹrẹ ibẹrẹ kanna bi akọsori module.

__insmod_modulename_Ssectionname_Llength

Aami yi yoo han ni ibẹrẹ awọn apakan ELF ti a yan, Lọwọlọwọ .text, .rodata, .data, .bss ati .sbss. O han nikan ti apakan ba ni iwọn kii kii-odo. Orukọ ẹgbẹ ni orukọ ti apakan ELF, ipari ni gigun ti apakan ninu eleemewa. Awọn aami aami wọnyi ni awọn igbasilẹ map awọn ksymoops si awọn apakan nigba ti ko si awọn aami wa.

__insmod_modulename_Ppersistent_filename

Nikan ṣẹda nipasẹ insmod ti o ba jẹ pe module naa ni awọn ifilelẹ ti o ni tabi diẹ sii ti a ti samisi bi data jubẹẹlo ati orukọ lati fi data pamọ (wo -e , loke) wa.

Iṣoro miiran pẹlu ekuro ti n ṣatunṣe aṣiṣe Oṣuwọn ni awọn modulu ni pe awọn akoonu ti / proc / ksyms ati / proc / modules le yipada laarin awọn Oo ati nigbati o ba ṣakoso faili log. Lati ṣe iranlọwọ bori isoro yii, ti itọsọna / var / log / ksymoops ba wa lẹhinna insmod ati rmmod yoo daakọ / proc / ksyms ati / proc / modules laifọwọyi / / / / / / ksymoops pẹlu iwọn ti ọjọ +% Y% m % d% H% M% S`. Olutọju eto le sọ ksymoops ti awọn faili ojulowo lati lo nigbati n ṣatunṣe aṣiṣe. Ko si iyipada lati pa didakọ laifọwọyi yi. Ti o ko ba fẹ ki o ṣẹlẹ, ma ṣe ṣẹda / var / log / ksymoops . Ti igbimọ naa ba wa, o yẹ ki o jẹ ohun-ini nipasẹ gbongbo ki o jẹ ipo 644 tabi 600 ati pe o yẹ ki o ṣiṣe akọọlẹ yii ni gbogbo ọjọ tabi bẹẹ. Awọn akosile ti o wa ni isalẹ ti fi sori ẹrọ bi insmod_ksymoops_clean .

Alaye Ipilẹ lati Mọ

Orukọ

insmod - fi eto iṣiro ti o ṣeéṣe

SYNOPSIS

insmod [-fhkLmnpqrsSvVxXyYN] [-e persist_name ] [-o module_name ] [-O blob_name ] [-P prefix ] module [ symbol = value ...]