Linux / Unix Amar: Insmod

Nidaamka Linux / Unix wuxuu ku rakibayaa modulada wax lagu kicin karo ee xawaaraha ku socda. wuxuu isku dayaa inuu isku xiro qalabka xawaaraha qulqulaya isagoo xallinaya dhamaan calaamadaha miiska calaamadaha dhoofka.

Haddii magaca faylka moduleka ah la bixiyo iyada oo aan lahayn wicitaano ama kordhin, insmod wuxuu raadin doonaa modulka qaybaha caadiga ah ee caadiga ah. Heerka jawiga deegaanka ayaa loo isticmaali karaa in lagu tirtiro is-beddelkan. Haddii fayl naqshadeynta moduleka ah sida /etc/modules.conf , waxaa laga tirtirayaa waddooyinka lagu qeexay MODPATH .

MODULECONF variable variable waxaa sidoo kale loo isticmaali karaa in lagu xusho faylka qaabka qaabka ah ee ka duwan tan /etc/modules.conf (ama /etc/conf.modules ). Isbedelka deegaanku wuxuu xadidayaa dhamaan sharaxyada kor ku xusan.

Marka bedelaadaha deegaanka UNAME_MACHINE ayaa la dejiyaa, makiinaduhu waxay isticmaali doonaan qiimihii halkii mashiinka mashiinka ah ee unug () syscall. Tani waa inta badan isticmaalka markaad soo diyaarisid 64-mitir oo ku jira 32-ka qof ee isticmaal-ka-isticmaale ah ama ka hor, u dhig UNAME_MACHINE nooca modules. Maadooyinka hadda jira ma taageersan qaab-dhismeed iskudhafan oo buuxa oo loogu talagalay qaybaha, waxay ku xaddidan tahay inaad doorato inta u dhaxaysa 32- iyo 64-bit ee qaab dhismeedka martida.

Fursadaha

-e persist_name , --persistist = persist_name

Muujinaya meesha xogta joogtada ah ee moduleka la akhriyo laga bilaabo culeyska laguna qoro marka muuqaalkan mawduucan la marsiiyo. Doorashadan waxaa si qarsoodi ah loo iska indho tirayaa haddii moduleku aanu lahayn xog joogto ah. Xogta joogtada ah ayaa kaliya aqrisa by insmod haddii ikhtiyaarkan la joogo, by insmod caadiga ah ma socodsiin xog joogto ah.

Sida qaab muuqaal ah , "a" (xarfo madhan) ayaa la turjumay insmod sida qiimaha joogtada ah sida lagu qeexay modules.conf , oo ay ku xigto filename-ka moduleka ee ku xiran waddada raadinta moduleka waxaa laga helay, laga raadinta ".gz", ".o" ama ".mod". Haddii modules.conf ay ku qeexdey " joogteyn = " (ie joogto ah waa mid banana ) kadib markaan qaabkan qaab-dhismeedka ah ayaa si aamusnaan leh loo tiriyaa. (Eeg modules.conf (5).)

-f , - xoojin

Isku day inaad gawaarid ku sameyso xitaa haddii qaabka qalabka xawaaraha iyo nooca kernel ee kaas oo moduleka la dhameeyay aysan ku haboonayn. Tani waxay kaliya ka gudubtay jeegga version kernel, wax saameyn ah kuma yeelaneyso jeegga astaanta. Haddii magaca calaamadaha ku jira moduleka aysan u dhigmin kernel markaas ma jirto siyaabaha lagu qasbo insmod inuu kudhaco moduleka.

-h , --help

Muuji soo koobidda xulashooyinka oo isla markiiba bixi.

-kaga ,

U diyaari calanka auto-nadiifka ah moduleka. Calankan waxaa loo isticmaali doonaa kerneld (8) si looga saaro qaybaha aan la isticmaalin muddo wakhti ah - badiyaa hal daqiiqo.

-L , - guluuf

Isticmaal adhiga (2) si aad uga hortagto in ay isku midka yihiin isku mid ah isla halbeegga.

-m , --map

Ka soo saar khariidad ku salaysan stdout, taas oo fududaynaysa in la debciyo modulka haddii ay dhacdo argagax xabbo.

-n ,

Caji ah, kari waxkasta marka laga reebo qalabka muraayadda oo keli ah. Haddii ay codsadaan -m ama -O , kumbuyuutarku wuxuu soo saari doonaa faylka ama feylka. Maadaama mashiinka aan la buuxin, cinwaanka xawaarida dhabta ah lama garanayo sidaas daraadeed khariidadda iyo faylka xayawaanka waxay ku saleysan yihiin cinwaan aan ku meel-gaarin oo ah 0x12340000.

-o module_name , - name = module_name

Si cad u sheeg magaca module-ka, halkii uu ka dhigi lahaa magaca magaca magaca aasaasiga ah ee feylka walaxda.

-Bobob_name , --blob = blob_name

Keydso shayada ikhtiyaariga ah ee blob_name . Natiijadu waa bubi ikhtiyaari ah (ma lahan madaxyada ELF) oo muujinaya waxa dhabta ah ee lagu dhejiyay ka dib markii la maareynayo qaybta iyo dib u dejinta. Ikhtiyaarka-waxaa lagu talinayaa in la helo khariidadda shayga.

-p , - sawir

U baaro moduleka si aad u aragto in si guul leh loo dhigi karo. Tan waxaa ka mid ah in la helo faylka sheyga ee dariiqa moduleka, hubinta lambarrada version, iyo xalinta calaamadaha. Ma hubin dib u dejinta ama ma soo saareyso faylka ama feylka.

-PPPP , --Prefix = horgal

Doorashadan waxaa loo isticmaali karaa qaybaha loo yaqaan "SMP" ama "bigmem", maxaa yeelay moodaradani waxay leeyihiin horgal dheeraad ah oo lagu daro magacyadooda. Haddii xarafka lagu dhejiyay qaabab calaamado ah, insmod ayaa si toos ah u soo saari doona horgalkiisa qeexitaanka "get_module_symbol" ama "inter_module_get", mid ka mid ah waa inuu ka jiraa kernel kasta oo taageera modules. Haddii qalabku aanu lahayn wax calaamado ah laakiin moodeelka ayaa la dhisay wixi calaamad ah markaa waa in uu isticmaaluhu soo gudbiyo -P .

-q , -

Ha daabacin liiska calaamadaha aan la xalin. Ha ka cabanin wadahadal la'aanta. Dhibaatadu waxay kaliya ka muuqan doontaa xaalada ka baxsan ee ka dhexjirta .

-r , - xidid

Qaar ka mid ah dadka isticmaala waxay kuxiraan adeegsade aan rooti ahayn ka dibna rakibaan nidaamyada asaasiga ah. Hannaankani wuxuu ka bixi karaa nidaamyada ay leedahay qofka isticmaala non-root ah, inkastoo ay ku jiraan diiwaanka nidaamyada uu leeyahay xidid. Haddii la isticmaalo qoyaanka aan rootiga ahayn, khalkhal galiyaha ayaa ku dhaafi karaa qaybaha hadda jira ee ay leedahay qofka isticmaala oo isticmaalaya dhibcadan si uu ufududaysto illaa aasaasiga ah.

Taas beddelkeeda, makiinaduhu waxay diidi doonaan isku daygooda inay isticmaalaan qalab aan lahayn rukumo. Qeexida -r waxay gooyn doontaa jeegga waxayna u oggolaan kartaa asalka in uu kudhaco qaybaha aan laheyn asalka. Ogsoonow: qiimaha caadiga ah ee jeegga asaasiga ah waa la bedeli karaa marka qalabka la adeegsado.

Isticmaalka -r si loo yareeyo baaritaanka asaasiga ah ama dejinta "default to check root" wakhtiga qaabeynta waa sheyga ugu weyn ee ammaanka laguma talinayo.

-s , - syslog

Wax kasta oo wax soo saara si ay u bixiyaan syslog (3) halkii ay ka ahaan lahayd terminal.

-S , -kalsyms

Isticmaal qalabka loo yaqaan "loaded" si uu u helo xogta calsan , xitaa haddii qalabku aanu taageerin. Doorashadan ayaa loogu talagalay nidaamyo yaryar oo ah kernelka lagu dhejiyo iyada oo aan xogta laga helin , laakiin qaybaha la soo xulay waxay u baahan yihiin kalsymym for the debugging. Doorashadani waa khidmadda Red Hat Linux.

-waxaa ku jira

Noqo hadal.

-V , - Codsi

Muuji qaybta caanaha .

-X , - canshuurta ; -x , -waxbarasho

Samee oo ha dhoofin dhammaan calaamadaha dibadda ee moduleka, siday u kala horreeyaan. Badbaadadu waa calaamadaha la dhoofiyo. Doorashadani waxay waxtartay oo kaliya haddii moduleku aanu si cad u dhoofin miiska calaamadaha gaarka ah, sidaas awgeedna waa la iska indhatiray.

-Yu , - xumbo ; -y , -noksymoops

Ha sameeyo oo ha ku darin csymoops csyms to ksyms. Astaamahaan waxaa isticmaala ksymoops si ay u bixiyaan khaldan si fiican haddii ay jirto Oops ee modulekan. Kumbuyuutarku waa calaamadaha ksymoops si loo qeexo. Doorashadani waxay ka madax bannaan tahay xulashooyinka -X / -x .

csymoops calaamadaha waxay kudhowaad yihiin qiyaastii 260 bytes per module. Haddii aad dhab ahaantii aad u gaaban tahay xariiqda xawaaraha iyo isku dayeyso inaad yareeyso ksyms illaa heerka ugu hooseeya, qaado qaddarka oo aad u hesho si sax ah Oops debugging. csymoops calaamadaha ayaa looga baahan yahay inay keydiyaan macluumaadka joogta ah ee moduleka.

-N , - tiri-kaliya

Kaliya hubi qaybta miiska ee qaybta moduleka oo ka soo horjeeda version kernel, ie iska indha-tiri EXTRAVERSION marka go'aan laga gaarayo haddii moduleka uu yahay kernel. Calankan waxaa si toos ah loogu qoondeeyay xudduudda 2.5 oo kaamil ah, waa doorasho keli ah.

Qodobbada Module

Qaababka qaar waxay aqbalaan xuduudaha saacadaha-cabbirkooda si ay u habeeyaan hawlahooda. Xuduudahaani waa inta badan dekedaha I / O iyo nambarada IRQ kuwaas oo ku kala duwan mashiinka mashiinka iyo laguma go'aamin karo qalabka.

Qeybaha lagu dhajiyay kernels 2.0, wax kasta oo calaamado ah ama calaamadda astaamaha calaamadaha ayaa lagu daaweyn karaa sidii lagu cabbiray oo loo habeeyey. Laga bilaabo kernels 2.1 taxane ah, calaamadaha si cad ayaa loo calaamadeeyay sida xuduudaha si loo qiimeeyo qiimaha gaarka ah. Intaas waxaa sii dheer, nooca macluumaadka ayaa la bixiyaa si loo hubiyo qiimaha lagu bixiyay wakhtiga raranta.

Xaaladda mawjadaha, qiimaha oo dhan waxay noqon kartaa tobanle, tobanlaha ama laba-iyo-tobanlaha a la C: 17, 021 ama 0x11. Qaybaha kala duwan ayaa lagu qeexay taxanaha kala-tagga. Elementada waxaa lagu boodi karaa adoo iska jaraya qiimaha.

Noocyada 2.0 ee taxanaha ah, qiimaha aan ka bilaaban lambarka waxaa loo tixgeliyaa xarriijimo. Laga bilaabo 2.1, xogta nooca "parameter" waxay muujinaysaa haddii lagu turjumayo qiimaha sida xarig. Haddii qiimaha uu ku bilaabmayo labo-doodo ( " ), xarafka waxaa lagu fasirayaa sida ku jirta C, kala-baxyada iyo dhamaanba.

GPL Modules iyo Calaamadaha Luqadaysan

Ka bilaabidda kernel 2.4.10, modules waa inay leeyihiin liis shati, oo lagu qeexay isticmaalka MODULE_LICENSE () . Dhawaaqyo dhowr ah ayaa loo aqoonsan yahay inay yihiin GPL wax ku ool ah; wixii kale ee shati liisan ama shati liin la'aan ah oo dhan macnaheedu waa in moduleka loola dhaqmo sida mulkiyad.

Haddii kernel ay taageerto calanka / proc / sys / cirif / calan galiyay ka dibna insmod WAXAA AMA calanka la qabadsiiyay '1' marka lagu rakibayo module aan lahayn liisan GPL. Digniin ah ayaa la soo saaraa haddii qalabku uu taageersan yahay miyir-qabka iyo habka loo isticmaalo ruqsad la'aan. Digniinta waxaa had iyo jeer loo soo saaraa modules kuwaas oo haysta MODULE_LICENSE () oo aan aheyn GPL wax ku ool ah, xitaa kernels ka weyn oo aan taageereynin miyir beelid. Tani waxay yaraynaysaa digniinaha marka qalab cusub loo isticmaalo koofiyadaha waaweyn.

Foomka insmod -f (force) wuxuu noqon doonaa mid calaamadeysan oo leh '2' keli keli ah oo taageera miyir-qabka. Had iyo jeer waa digniin.

Qaar ka mid ah kobciyeyaasha kore waxay u baahan yihiin in calaamadaha ay dhoofiyaan koodhkooda ay tahay in loo isticmaali karo oo keliya modules leh liisan GPL leh oo la mid ah. Astaamahaan waxaa lagu dhoofiyaa EXPORT_SYMBOL_GPL halkii caadiga ahayd EXPORT_SYMBOL . Astaamaha GPL-ga ah ee laga dhoofiyo kernel iyo modules kale ayaa lagu arki karaa oo kaliya modules leh liisan GPL-ku habboon, calaamadahaan waxay ku muuqdaan / gawaarida horey u soo jeedin ' GPLONLY_ '. waxay gaabisaa GPLONLY_ prefix calaamadaha calaamadaha marka lagu dhejinayo moduleka GPL shati si markaa module kaliya loo tixraaco magaca calaamadda caadiga ah, iyada oo aan horgeyn. GPL oo keliya calaamadaha lama heli karo si loogu isticmaalo qalabka la'aan la'aanta GPL liisan leh, tan waxaa ka mid ah qaybaha aan laysan lahayn.

KSymoops Caawimaadda

Si aad uga caawiso ka-hortagidda kernel-ka marka aad isticmaasho koodhka, khariidadaha ku-meel-gaadhka ah si aad ugu darsato calaamadaha qaarkood ee ksyms, fiiri ikhtiyaarka -Y . Calaamadahaasi waxay ku bilaabmaan __insmod_modulename_ . Naqshadeynta waxaa looga baahan yahay in ay calaamadaha u dhigmaan . Waa sharci inaad ku shubto walax isku mid ah hal mar ka badan magacyo kala duwan. Waqtiga hadda, calaamadaha la qeexay waa:

__insmod_modulename_Oobjectfile_Mmtime_Vversion

ficil-celinta waa magaca feylka sheyga laga soo dhejiyey. Tani waxay xaqiijineysaa in ksymoops ay ku haboonaan karaan lambarka si shayga saxda ah. mtime waa wakhtigii ugu dambeeyey ee looxadha ah ee faylkaas ku yaal hex, eber, haddii ay ku guuldareysato. version waa nuqulka kernel ee moduleka loo qoondeeyay, -1 haddii aan la heli karin nuqul. Calaamadda _O waxay leedahay cinwaankii ugu horreeyey ee loo yaqaan 'header module'.

__insmod_modulename_Ssectionname_Llength

Calaamaddani waxay u muuqataa bilawga qaybaha ELF, hadda .text, .rodata, .data, .bss iyo .sbss. Waxa kaliya oo muuqata haddii qaybtu leedahay qiyaas aan lahayn eber. qaybta magacu waa magaca qaybta ELF, dhererka waa dhererka qaybta ee tobanle. Calaamadahaasi waxay ka caawiyaan cinwaanada map-ka ee qaybaha marka aysan jirin wax calaamado ah.

__insmod_modulename_Ppersistent_filename

Kaliya waxaa abuuray insmod haddii moduleku leeyahay mid ama in ka badan oo xuduud ah kuwaas oo loo calaamadiyay xog joogto ah iyo filename ah si loo keydiyo xogta joogtada ah (arag- up , kor).

Dhibaatada kale ee isdaba-joogga ah Qodobbada waxaa ka mid ah waxyaabaha / / proc / ksyms iyo / proc / modules waxay u badali karaan inta u dhaxaysa Oops iyo marka aad ka shaqeysid faylka log. Si aad uga caawiso ka hortagidda dhibaatadan, haddii diiwaanka / var / log / ksymoops uu jiro, markaa alaabta iyo rmoodku waxay si toos ah u daabici doonaan / kumbury iyo / ama / modules / var / log / ksymoops oo leh taariikh horudhac 'date +% Y% m % d% H% M% S '. Maamulaha nidaamku wuxuu u sheegi karaa ksymoops kuwaas oo feylalaha galka si loo isticmaalo marka laga hortago Oops. Ma jiro wax bedel ah oo lagu joojin karo koobi automatic ah. Haddii aadan rabin inay dhacdo, ha abuurin / var / log / ksymoops . Haddii buugyaradani jiraan, waa in ay lahaan karaan xidid iyo inay noqdaan 644 ama 600 oo waa inaad qortaa qoraalkan maalin kasta ama wixii la mid ah. Qoraalka hoose waxaa lagu rakibayaa sida insmod_ksymoops_clean .

Macluumaadka Aasaasiga ah ee Ogow

MAGACA

Insmod - ku rakib qalabka xawaaraha

SYNOPSIS

insmod [-fhkLmnpqrsSvVxXyYN] [-e persist_name ] [-o module_name ] [-O blob_name ] [-f ' prefix ] module [ calaamadda = qiimaha ...]