Depmod - Linux Command - Unix հրաման

Անուն

depmod - բեռնված միջուկի մոդուլների համար կարգավորել կախվածության նկարագրությունները

Սինոփսիս

depmod [-aA] [-ehnqrsuvV] [-C configfile ] [-F kernelsyms ] [-b հիմնադիր ] [ forced_version ]
depmod [-enqrsuv] [-F kernelsyms ] module1.o module2.o ...

Նկարագրություն

The depmod եւ modprobe կոմունալ ծառայություններն ուղղված են Linux մոդուլային միջուկի կառավարմանը բոլոր օգտվողների համար, ադմինիստրատորների եւ բաշխիչ ապահովիչների համար:

Depmod- ը ստեղծում է «Makefile» - նման կախվածության ֆայլ, որը հիմնված է հուշում գծագրված մոդուլների կամ կոնֆիգուրացիայի ֆայլում նշված դիրեկտորիաներում տեղ գտած խորհրդանիշների վրա: Այս կախվածության ֆայլը հետագայում օգտագործվում է modprobe- ով , ավտոմատ կերպով բեռնված մոդուլների ճիշտ մոդուլը կամ բլոկը:

Depmod- ի նորմալ օգտագործումը ներառում է գիծը


/ sbin / depmod -a

ինչ-որ տեղ /cc/rc.d- ի rc- files- ում , այնպես որ ճիշտ մոդուլի կախվածությունը հասանելի կլինի համակարգը բեռնաթափելուց անմիջապես հետո: Ուշադրություն դարձրեք, որ այս տարբերակը , այժմ, պարտադիր է: Բեռնախցիկի նպատակների համար ընտրությունը կարող է ավելի հարմար լինել, քանի որ այն չկարգավորված խորհրդանիշների վերաբերյալ դառնում է լռություն:

Հնարավոր է ստեղծել նաեւ կախվածության ֆայլը նոր միջուկի կազմից անմիջապես հետո: Եթե ​​դուք կատարեք " depmod-a 2.2.99 ", երբ դուք ստեղծեք միջուկը 2.2.99 եւ դրա մոդուլները առաջին անգամ, մինչդեռ դեռեւս աշխատում է, օրինակ 2.2.98, ֆայլը կստեղծվի ճիշտ տեղում: Այդ դեպքում, սակայն, միջուկի կախվածությունը չի երաշխավորվի ճիշտ լինել: Տեսեք այն գործառույթների վերաբերյալ լրացուցիչ տեղեկությունների համար տես -F , -C եւ -b ընտրանքներ:

Մոդուլների եւ մյուս մոդուլների կողմից արտահանվող խորհրդանիշների միջեւ հարաբերությունները կառուցելիս, depmod չի համարում մոդուլների GPL կարգավիճակը եւ արտահանվող խորհրդանիշները: Այսինքն, depmod- ը սխալ չի նշում, եթե GPL- ի հետ համատեղելի լիցենզիա չունեցող մոդուլը վերաբերում է GPL- ի միայն խորհրդանիշին (EXPORT_SYMBOL_GPL է միջուկում): Այնուամենայնիվ, insmod- ը չի հրաժարվի GPL- ի ոչ միայն GPL մոդուլների խորհրդանիշներից, այնպես որ իրական բեռնվածությունը չի հաջողվի:

Ընտրանքներ

, բոլորը

Որոնել մոդուլներ բոլոր դիրեկտորիաների մեջ, որոնք նշված են (ընտրովի) configurationet /etc/modules.conf ֆայլում :

, - գիրք

Համեմատեք ֆայլի ժամանակային նշանները եւ, անհրաժեշտության դեպքում, գործեք որպես depmod -a : Այս տարբերակը միայն թարմացնում է կախվածության ֆայլը, եթե ինչ-որ բան փոխվեց:

-e , --errsyms

Ցուցադրել բոլոր չլուծված խորհրդանիշները յուրաքանչյուր մոդուլի համար:

, - օգնեք

Ցուցադրել ընտրանքների ամփոփ նկարագիրը եւ անմիջապես ելքը:

, - ցուցադրեք

Գրել կախվածության ֆայլը stdout- ում instead of / lib / modules tree- ում:

-q , --quiet

Ասացեք, որ պահեք, որ հանգիստ պահեք եւ չհայտնվեք բացակայող խորհրդանիշների մասին:

, - հոտ

Որոշ օգտվողները օգտագործում են մոդուլներ ոչ արմատական ​​userid- ի ներքո, ապա մոդուլները տեղադրել որպես արմատ: Այս գործընթացը կարող է թողնել ոչ արմատական ​​օգտվողին պատկանող մոդուլները, չնայած որ մոդուլի դիրեկտորը պատկանում է արմատին: Եթե ​​ոչ արմատական ​​օգտագործողը վտանգված է, ինտեգրիչը կարող է վերագրել այն օգտագործողին պատկանող գոյություն ունեցող մոդուլները եւ օգտագործել այդ ազդեցությունը մինչեւ արմատ մուտք գործելու համար:

Լռելյայնորեն, modutils- ը չի հրաժարվի արմատից պատկանող մոդուլի օգտագործման փորձերից: Հստակեցնելով -r- ը կհանգեցնի սխալի եւ թույլատրում արմատից բխում մոդուլներ, որոնք արմատ չունեն:

-r- ի օգտագործումը խոշոր անվտանգության ազդեցություն է եւ խորհուրդ չի տրվում:

-s , --syslog

Գրեք բոլոր սխալների հաղորդագրությունները syslog- ի օրացույցի միջոցով stderr- ի փոխարեն:

-u , -unresolved-error

depmod 2.4- ը չի սահմանում վերադարձ կոդը, երբ կան չլուծված խորհրդանիշներ: Մոդութիլների (2.5) հերթական հիմնական թողարկումը կկատարի չկատարված խորհրդանիշների համար վերադարձ կոդը: Որոշ բաշխումներ ցանկանում են ոչ մոդուլների 2.4-ի ոչ-զրոյական կոդը, սակայն այդ փոփոխությունը կարող է խնդիրներ առաջացնել այն օգտվողների համար, ովքեր ակնկալում են հին վարքագիծ: Եթե ​​ցանկանում եք ոչ-զրոյական վերադարձ կոդը 2.4 կետում, նշեք -u : depmod 2.5- ը լռում է անտեսել -u դրոշը եւ անընդհատ չվերադարձված նիշերի համար ոչ-զրոյական վերադարձնելու կոդը:

, - մանրամասն

Ցույց տալ յուրաքանչյուր մոդուլի անունը, քանի որ այն մշակվում է:

, - տարբերություն

Ցուցադրեք վահմոդի տարբերակը:

Հետեւյալ տարբերակները օգտակար են այն բանի համար,

-b հիմնադիր , - բազային հիմնադիր

Եթե ​​մոդուլների ծառերը պարունակող տառատեսակը / lib / modules տեղափոխվում են այլ տեղ, մոդուլներ կարգավորել այլ միջավայրի համար, -b տարբերակը նշում է, որտեղ տեղադրվում է / lib / մոդուլների ծառի տեղափոխված պատկերը: Ֆայլի հղումները Depmod արտադրանքի ֆայլում, որը կառուցված է, modules.dep- ը չի պարունակում հիմնադիր ուղին: Սա նշանակում է, որ երբ ֆայլի ծառը վերածվում է վերգետնյա / lib / modules- ից / lib / մոդուլների վերջնական բաշխման մեջ, բոլոր հղումները ճիշտ կլինեն:

-C configfile , --config configfile

Օգտագործեք ֆայլի configfile- ի փոխարեն /etc/modules.conf- ը : MODULECONF- ի շրջակա միջավայրի փոփոխականը կարող է օգտագործվել նաեւ այլ ձեւափոխման ֆայլ ընտրելու համար, /etc/modules.conf- ից (կամ /etc/conf.modules ( չպահված )):

Երբ շրջակա միջավայրի փոփոխությունը

UNAME_MACHINE- ը սահմանվում է, modutils- ը կօգտագործի իր արժեքը մեքենայի դաշտի փոխարեն uname () syscall- ից: Դա հիմնականում օգտագործվում է այն ժամանակ, երբ 64 բիտ մոդուլներ կազմեք 32 բիթանոց օգտագործողի տարածքում կամ հակառակը, սահմանեք UNAME_MACHINE- ը `կառուցված մոդուլների տեսակի համար: Ընթացիկ մոդուտիլները չեն աջակցում մոդուլների համար խաչաձեւ կառուցվածքի ռեժիմ, այն սահմանափակվում է հյուրընկալ ճարտարապետության 32-64 բիթանոց տարբերակների միջեւ:

-F kernelsyms , --filesyms kernelsyms

Երբ ստեղծում են կախվածության ֆայլեր տարբեր սերվերների համար, քան ներկայիս վազքի միջուկը, կարեւոր է, որ depmod- ն օգտագործում է միջուկային նիշերի ճիշտ հավաքածուն, յուրաքանչյուր միջուկում միջուկային տեղեկանքների լուծման համար: Այս նշանները կարող են լինել System.map- ի պատճենը մյուս միջուկի կամ պատճենը / proc / ksyms- ից : Եթե ​​ձեր միջուկը օգտագործում է տարբերակված խորհրդանիշներ, ապա լավագույնը / proc / ksyms արտադրանքի պատճենն է , քանի որ այդ ֆայլը պարունակում է միջուկային նշանների խորհրդանիշ տարբերակները: Այնուամենայնիվ, Դուք կարող եք System.map- ը օգտագործել նույնիսկ տարբերակված նիշերով:

Կազմաձեւում

Depmod- ի եւ modprobe- ի վարքագիծը կարող է ճշգրտվել /etc/modules.conf- ի (ընտրովի) կազմաձեւով:
Տեսեք modprobe (8) եւ modules.conf (5) ամբողջական նկարագրությունը:

Ստրատեգիա

Ամեն անգամ, երբ դուք ստեղծում եք նոր միջուկ, « make modules_install » հրամանը կստեղծի նոր տեղեկատու, բայց չի փոխի կանխադրվածը:

Երբ դուք ստանում եք միջուկային բաշխման հետ կապ չունեցող մոդուլ, ապա այն պետք է տեղադրեք ներքեւի / lib / մոդուլների տարբերակներից անկախ դիրեկտորիաներից մեկում:

Սա ստանդարտ ռազմավարություն է, որը կարող է փոխարինել /etc/modules.conf- ում :

Տես նաեւ

lsmod (8), ksyms (8)

Կարեւոր է. Օգտագործեք հրամանատարությունը ( % մարդ ), որպեսզի տեսնեք, թե ինչպես է օգտագործվում հրամանը ձեր որոշակի համակարգչում: