Անուն
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- ում :
Տես նաեւ
Կարեւոր է. Օգտագործեք հրամանատարությունը ( % մարդ ), որպեսզի տեսնեք, թե ինչպես է օգտագործվում հրամանը ձեր որոշակի համակարգչում: