Depmod - Linux ကိုစစ်ဌာနချုပ် - Unix စစ်ဌာနချုပ်

အမည်

depmod - loadable kernel ကို module တွေအဘို့အမှီခိုဖော်ပြချက်ကိုင်တွယ်

အနှစ်ချုပ်

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

ဖေါ်ပြချက်

အဆိုပါ depmod နှင့် modprobe utilities အားလုံးသုံးစွဲသူများအုပ်ချုပ်ရေးမှူးများနှင့်ဖြန့်ဖြူးဆက်လက်ထိန်းသိမ်းများအတွက် Linux ကို modular kernel ကိုစီမံခန့်ခွဲစေရန်ရည်ရွယ်ပါသည်။

Depmod က command line ကပေါ်တွင်သို့မဟုတ်အတွက် configuration ဖိုင်ထဲမှာသတ်မှတ်ထားတဲ့လမ်းညွှန်ကနေဖော်ပြခဲ့တဲ့ module တွေ၏အစုထဲမှာတွေ့သည့်သင်္ကေတများပေါ်အခြေခံပြီး, မှီခိုဖိုင် -like တစ်ခု "Makefile" ဖန်တီးပေးပါတယ်။ ဤသည်မှီခိုဖိုင်နောက်ပိုင်းတွင်အလိုအလြောကျ module တွေ၏မှန်ကန်သော module သို့မဟုတ် stack load လုပ်ဖို့ modprobe နေဖြင့်အသုံးပြုသည်။

depmod ၏ပုံမှန်အသုံးပြုမှုမျဉ်းများပါဝင်သည်ရန်ဖြစ်ပါသည်


/ sbin / depmod -a

/etc/rc.d အတွက် RC-ဖိုင်တွေထဲမှာတစ်နေရာရာ, မှန်ကန်တဲ့ module ကိုမှီခိုချက်ချင်းစနစ် booting ပြီးနောက်မရရှိနိုင်ပါလိမ့်မည်ဒါကြောင့်။ ထို option -a ယခုရွေးချယ်နိုင်ကြောင်းသတိပြုပါ။ ကြောင်းမဖြေရှင်းနိုင်သင်္ကေတများနှင့် ပတ်သက်. depmod အသံတိတ်စေသည်ကတည်းက Boot-တက်ရည်ရွယ်ချက်များအဘို့, option ကို -q ပိုပြီးသင့်လျော်သောဖြစ်လိမ့်မယ်။

ဒါဟာချက်ချင်းအသစ်တခု kernel ကိုပြုစုပြီးနောက်မှီခိုဖိုင်ကိုဖန်တီးပေးရန်လည်းဖြစ်နိုင်သည်။ သင် "depmod -a 2.2.99" ပြုလျှင်သင်တို့ကို kernel ကို 2.2.99 နှင့်၎င်း၏ module တွေပထမဦးဆုံးအကြိမ်ပြုစုကြသည့်အခါနေဆဲဥပမာ 2.2.98 ပြေးနေချိန်မှာ, ဖိုင်ကိုမှန်ကန်သောအရပျ၌ created လိမ့်မည်။ ဤကိစ္စတွင်သို့သော် kernel ကိုအပေါ်မှီခိုမှန်ကန်သောဖြစ်အာမခံလိမ့်မည်မဟုတ်ပါ။ , options -F ကြည့်ရှုပါ -C နှင့်ဤကိုင်တွယ်အပေါ်ပိုမိုသောအချက်အလက်များအဘို့အထက် -b

module တွေနှင့်အခြား module တွေအားဖြင့်တင်ပို့သည့်သင်္ကေတများအကြားဆက်ဆံရေးကိုတည်ဆောက်နေစဉ်, depmod သည့်၎င်း module ကိုမတင်ပို့သင်္ကေတ၏ GPL status ကိုထည့်သွင်းစဉ်းစားမထားဘူး။ တစ်ဦး GPL သဟဇာတလိုင်စင်မရှိဘဲ module တစ်ခု GPL သာသင်္ကေတ (အ kernel ကိုအတွက် EXPORT_SYMBOL_GPL) ကိုရည်ညွှန်းသည်ဆိုပါကအကြောင်း, depmod လိမ့်မယ်မဟုတ်အလံမှားယွင်းမှုတစ်ခုဖြစ်ပါတယ်။ သို့သော် insmod အမှန်တကယ်ဝန်ပျက်ကွက်ပါလိမ့်မယ်ဒါကြောင့် GPL Non-GPL module တွေသာသင်္ကေတများဖြေရှင်းရန်ဖို့ငြင်းဆန်ပါလိမ့်မယ်။

options ကို

-a, --all

အဆိုပါ (optional) configuration ဖိုင် /etc/modules.conf အတွက်သတ်မှတ်ထားသောအားလုံး directory များတွင် module တွေရှာပါ။

-a, --quick

ဖိုင် timestamps တွေကိုနှိုင်းယှဉ်ကြည့်ပါနှင့်, လိုအပ်ပါက, depmod -a နဲ့တူပြုမူ။ ဘာမှပြောင်းလဲသွားပြီဆိုပါကဒီ option ကိုသာမှီခို file ကို update ။

-e, --errsyms

တစ်ဦးချင်းစီရဲ့ module တစ်ခုအားလုံးကိုမဖြေရှင်းနိုင်သင်္ကေတပြပါ။

-h, --help

options နဲ့ချက်ချင်းထွက်ပေါက်တစ်ခုအကျဉ်းချုပ်တင်ပြပါ။

-n, --show

stdout အပေါ်အစား / lib / module တွေ tree ထဲမှာမှီခို file ကိုရေးပါ။

-q, --quiet

တိတ်ဆိတ်စောင့်ရှောက်ရန်နှင့်ပျောက်ဆုံးနေသင်္ကေတများနှင့် ပတ်သက်. တိုင်ကြားဖို့မ depmod ပြောပြပါ။

-r, --root

အချို့သောအသုံးပြုသူများသည် non-အမြစ် userid အောက်မှာ module တွေပြီးတော့အမြစ်အဖြစ် module တွေ install compile ။ ဤလုပ်ငန်းစဉ်အတွက် module တွေ directory ကိုအမြစ်ကပိုင်ဆိုင်သည်ကိုပင်သော်လည်း non-အမြစ် userid ကပိုင်ဆိုင်သည့် module တွေစွန့်ခွာနိုင်ပါတယ်။ non-အမြစ် userid စိတ်မချရလျှင်တစ်ခုကျူးကျော်ကြောင်း userid ကပိုင်ဆိုင်တည်ဆဲ module တွေ overwrite နှင့် Access root မှတက် boot တက်ခြင်းကိုလုပ်ဆောင်ဤထိတွေ့မှုသုံးနိုင်သည်။

ပုံမှန်အားဖြင့်, modutils အမြစ်ကပိုင်ဆိုင်သည်မဟုတ်တဲ့ module ကိုသုံးစွဲဖို့ကြိုးစားမှုငြင်းပယ်ပါလိမ့်မယ်။ -r သတ်မှတ်ခြင်းအမှားဖိနှိပ်နှင့်အမြစ်အမြစ်ကပိုင်ဆိုင်ကြသည်မဟုတ်ကြောင်း module တွေ load လုပ်ဖို့ခွင့်ပြုပါလိမ့်မယ်။

-r ၏အသုံးပြုမှုကအဓိကလုံခြုံရေးထိတွေ့မှုဖြစ်ပြီးအကြံပြုသည်မဟုတ်။

-s, --syslog

အစား stderr ၏ syslog daemons မှတဆင့်အားလုံးအမှားမက်ဆေ့ခ်ျရေးပါ။

-u, --unresolved-အမှား

မည်သည့်မဖြေရှင်းနိုင်သင်္ကေတများရှိပါသည်သည့်အခါ 2.4 ပြန်လည်ကုဒ်သတ်မှတ်ထားပါဘူး depmod ။ modutils ၏နောက်အဓိကဖြန့်ချိ (2.5) မဖြေရှင်းနိုင်သင်္ကေတတစ်ခုပြန်လာကုဒ်ထားမည်။ တချို့ကဖြန့်ဝေ modutils 2.4 အတွက် non-သုညပြန်လာကုဒ်ချင်ပေမယ့်ပြောင်းလဲမှုဟောင်းအပြုအမူကိုမျှော်လင့်သူကိုအသုံးပြုသူများအတွက်ပြဿနာများဖြစ်ပေါ်စေပေလိမ့်မည်။ သငျသညျ depmod 2.4 အတွက် non-သုညပြန်လာကုဒ်လိုလျှင်, -u သတ်မှတ်။ 2.5 တိတ်တဆိတ်အဆိုပါ -u အလံလျစ်လျူရှုမည်အမြဲမဖြေရှင်းနိုင်သင်္ကေတအဘို့အ non-သုညပြန်လာကုဒ်အားငါပေးမည် depmod

-v - verbose

ကလုပ်ဆောင်နေပါသည်အဖြစ်တစ်ဦးချင်းစီရဲ့ module တစ်ခု၏အမည်ပြပါ။

-V, --version

depmod ၏ဗားရှင်းဖော်ပြရန်။

အောက်ပါ options များဖြန့်ဝေ managing လူများအတွက်အသုံးဝင်နေသောခေါင်းစဉ်:

-b basedirectory, --basedir basedirectory

module တွေ၏ Sub-သစ်ပင်များ် directory ကိုသစ်ပင် / lib / module တွေကွဲပြားခြားနားသောပတ်ဝန်းကျင်တွင်အဘို့အ module တွေကိုကိုင်တွယ်နိုင်ရန်အတွက်အခြားတစ်နေရာသို့ပြောင်းရွှေ့လျှင်, -b option ကိုဘယ်မှာ / lib / module တွေသစ်ပင်၏ပြောင်းရွှေ့ image ကိုရှာတွေ့မှ depmod ပြောပြသည်။ built သော depmod output ကိုဖိုင်ထဲမှာဖိုင်ကိုးကား, modules.dep,basedirectory လမ်းကြောင်းကိုဆံ့မည်မဟုတ်။ ဖိုင်ကိုသစ်ပင်ပြန်နောက်ဆုံးဖြန့်ဖြူးအတွက် / lib / module တွေသို့ basedirectory / lib / module တွေကနေပြောင်းရွှေ့သောအခါသောဤဆိုလိုတယ်, ရှိသမျှကိုးကားမှန်ကန်သောဖြစ်လိမ့်မည်။

-C configfile, --config configfile

အစား /etc/modules.conf ၏ဖိုင်ကို configfile ကိုသုံးပါ။ ပတ်ဝန်းကျင် variable ကို MODULECONF ကိုလည်း default အ /etc/modules.conf (သို့မဟုတ် /etc/conf.modules (ကန့်ကွက်ခံထား)) အနေဖြင့်တစ်ဦးကွဲပြားခြားနား configuration file ကို select လုပ်ပါရန်အသုံးပြုနိုင်ပါသည်။

ဘယ်အချိန်မှာပတ်ဝန်းကျင် variable ကို

UNAME_MACHINE သတ်မှတ်, modutils အဆိုပါ uname () syscall ကနေမယ့်အစားစက်ကိုလယ်၎င်း၏တန်ဖိုးကိုသုံးပါလိမ့်မယ်။ သငျသညျ 32 bit နဲ့အသုံးပြုသူအာကာသသို့မဟုတ်အပြန်အလှန်အတွက် 64 bit နဲ့ module တွေပြုစုကြသောအခါဤသည်အဓိကအားဖြင့်အသုံးပြုမှုဖြစ်ပါသည်, built ခံရသည့် module တွေအမျိုးအစားကိုမှ UNAME_MACHINE ထားကြ၏။ လက်ရှိ modutils module တွေအပြည့်အဝလက်ဝါးကပ်တိုင်တည်ဆောက် mode ကိုထောကျပံ့ပေးမထားဘူး, ဒါကြောင့်အိမ်ရှင်ဗိသုကာ၏ 32 နဲ့ 64 bit နဲ့ဗားရှင်းအကြားရွေးချယ်ရာတွင်ဖို့ကန့်သတ်သည်။

-F kernelsyms, --filesyms kernelsyms

လက်ရှိလည်ပတ်နေ kernel ကိုထက်ကွဲပြားခြားနားသော kernel ကိုများအတွက်မှီခိုဖိုင်များကိုတည်ဆောက်ခြင်းသောအခါ, depmod တစ်ဦးချင်းစီရဲ့ module တစ်ခုအတွက် kernel ကိုကိုးကားဖြေရှင်း kernel ကိုသင်္ကေတများ၏မှန်ကန်သော set ကိုအသုံးပြုအရေးကြီးပါသည်။ ဤရွေ့ကားသင်္ကေတ / proc / ksyms ကနေအခြား kernel ကိုထံမှ System.map တစ်ဦးမိတ္တူ, သို့မဟုတ် output ကိုတစ်ဦးမိတ္တူနိုင်ပါတယ်ဖြစ်စေ။ သင့်ရဲ့ kernel ကို versioned သင်္ကေတကိုအသုံးပြုသည်ဆိုပါကပြုလုပ်ဖိုင် kernel ကိုသင်္ကေတ၏သင်္ကေတမူကွဲပါရှိသည်ကတည်းက, က, အ / proc / ksyms output ကိုတစ်ဦးမိတ္တူသုံးစွဲဖို့အကောင်းဆုံးဖြစ်ပါတယ်။ သို့သျောလညျးသငျသညျပင် VERSION သင်္ကေတများနှင့်အတူတစ် System.map ကိုသုံးနိုင်သည်။

configuration

depmod နှင့် modprobe ၏အပြုအမူအတွက် (optional) configuration ဖိုင် /etc/modules.conf အားဖြင့်ချိန်ညှိနိုင်ပါတယ်။
ပြည့်စုံဖော်ပြချက်များအတွက် modprobe (8) နှင့် modules.conf (5) ကိုကြည့်ပါ။

မဟာဗျူဟာ

သငျသညျသစ်တစ်ခု kernel ကို compile တစ်ခုချင်းစီကိုအချိန်, အမိန့်အသစ်တခု directory ကိုဖန်တီးပါလိမ့်မယ် "modules_install စေ" ဒါပေမယ့် default အနေနဲ့ပြောင်းလဲပစ်မည်မဟုတ်။

သင် kernel ကိုဖြန့်ဖြူးဖို့သက်ဆိုင်တဲ့တစ်ဦးရဲ့ module တစ်ခုရလာတဲ့အခါသင် / lib / module တွေအောက်မှာဗားရှင်း-လွတ်လပ်သောလမ်းညွှန်တစ်ဦးအတွက်နေရာသငျ့သညျ။

ဤသည် /etc/modules.conf အတွက်အသီးသီးတွင်နိုင်သည့်အတွက် default မဟာဗျူဟာဖြစ်ပါတယ်။

ဒါ့အပြင်ကိုကြည့်ပါ

lsmod (8), ksyms များ (8)

အရေးကြီး: လူကိုအသုံးပြုပါ က command command တစ်ခုကိုသင်၏အထူးသဖြင့်ကွန်ပျူတာပေါ်တွင်အသုံးပြုသည်ကိုမည်သို့ကြည့်ဖို့ (% လူကို)