Inittab-Linux / Unix စစ်ဌာနချုပ်

inittab - ထို sysv-သဟဇာတ init process ကိုအသုံးပြုတဲ့ inittab ဖိုင် format နဲ့

ဖေါ်ပြချက်

အဆိုပါ inittab ဖိုင် bootup မှာစတင်ပုံမှန်လည်ပတ်နေစဉ်အတွင်း (ဥပမာ /etc/init.d/boot, /etc/init.d/rc, Getty ... ) လျက်ရှိသောဖြစ်စဉ်များဖော်ပြသည်။ init (8) စတင်လုပ်ဆောင်လျက်ရှိသောလုပ်ငန်းစဉ်များစွာ၎င်း၏ကိုယ်ပိုင်အစုံရှိနိုင်ပါသည်တစ်ဦးချင်းစီ၏မျိုးစုံ runlevels, ထူးခြားမှုဖြစ်စေသည်။ ondemand entries တွေကို 6 ပေါင်း A, B, နှင့် C - သက်တမ်းရှိ runlevels 0 င်ကြသည်။ အဆိုပါ inittab ဖိုင်ထဲမှာတစ်ခု entry ကိုအောက်ပါပုံစံရှိပါတယ်:

အိုင်ဒီ: runlevels: အရေးယူမှု: ဖြစ်စဉ်ကို

`# '' နှင့်အတူစတင်လိုင်းများလျစ်လျူရှုနေကြပါတယ်။

အိုင်ဒီ (စာကြည့်တိုက်များနှင့်အတူပြုစု sysvinit ၏မူကွဲများအတွက် <5.2.18 သို့မဟုတ် a.out စာကြည့်တိုက်များကန့်သတ်ကို 2 ဇာတ်ကောင်ဖြစ်ပါသည်) inittab အတွက် entry ကိုသတ်မှတ်ပေးသော 1-4 ဇာတ်ကောင်တစ်မူထူးခြားတဲ့ sequence ကိုဖြစ်ပါတယ်။

မှတ်ချက်: Getty သို့မဟုတ်အခြားရဲ့ login ဖြစ်စဉ်များအတွက်, id သည်လယ်ပြင်သက်ဆိုင်ရာ TTY ၏ TTY နောက်ဆက်ဖြစ်သင့်, tty1 ဘို့ဥပမာ 1 ။ ဒီလိုမှမဟုတ်ရင်, ဝင်ရောက်ရန်စာရင်းကိုင်မှန်ကန်စွာအလုပ်လုပ်မပြုစေခြင်းငှါ။

runlevels သတ်မှတ်ထားသောအရေးယူရပါမည်ဖြစ်သောများအတွက် runlevels စာရင်းပြုလုပ်ထားသည်။

အရေးယူရပါမည်သည့်အရေးယူဆောင်ရွက်မှုဖော်ပြသည်။

ဖြစ်စဉ်ကိုကွပ်မျက်ခံရဖို့လုပ်ငန်းစဉ်ကိုသတ်မှတ်ပါတယ်။ ထိုလုပ်ငန်းစဉ်ကိုလယ်တစ်ဦး `+ ဇာတ်ကောင်နှင့်အတူစတင်သည်ဆိုလျှင်, init utmp ပြုကြနှင့်လုပ်ငန်းစဉ်အတွက်စာရင်းကိုင် wtmp လိမ့်မည်မဟုတ်ပါ။ ဒါကသူတို့ရဲ့ကိုယ်ပိုင် utmp / wtmp ထိန်းသိမ်းလုပ်နေတာအပေါ်အပြင်းအထန်တောင်းဆိုကြောင်း Getty ဘို့လိုအပ်ပါသည်။ ဤသည်ကိုလည်းသမိုင်းဝင် bug ကိုဖြစ်ပါတယ်။

အဆိုပါ runlevels လယ်ကွင်းကွဲပြားခြားနားသော runlevels အဘို့အမျိုးစုံဇာတ်ကောင်င်နိုင်ပါသည်။ ဥပမာအားဖြင့်, 123 လုပ်ငန်းစဉ် runlevels 1, 2 မှာစတင်ရပါမည်နှင့် ondemand entries တွေကိုများအတွက် 3. အဆိုပါ runlevels တစ်ခု A, B, သို့မဟုတ် C ဆံ့စေခြင်းငှါသတ်မှတ်ပါတယ်။ sysinit, Boot တက်နှင့် bootwait entries တွေကိုများ၏ runlevels လယ်ကိုလျစ်လျူရှုနေကြပါတယ်။

စနစ် runlevel ပြောင်းလဲသွားတယ်အခါသစ်ကို runlevel များအတွက်သတ်မှတ်ထားသောကြသည်မဟုတ်ဆိုပြေးဖြစ်စဉ်များထို့နောက် SIGKILL အတူပထမဦးဆုံး SIGTERM နှင့်အတူသေဆုံးနေကြသည်။

action ကိုလယ်ကွင်းများအတွက်သက်တမ်းရှိလုပ်ရပ်များနေသောခေါင်းစဉ်:

respawn

ဒါကြောင့် (ဥပမာ Getty) အဆုံးသတ်အခါတိုင်းအဆိုပါဖြစ်စဉ်ကိုပြန်လည်စတင်လိမ့်မည်။

စောင့်

သတ်မှတ်ထားသော runlevel ထဲသို့ဝင်သောအခါအဆိုပါဖြစ်စဉ်ကိုတခါစတင်ခဲ့မည်ဖြစ်ပြီး init က၎င်း၏ရပ်စဲဘို့စောင့်ဆိုင်းပါလိမ့်မယ်။

တခါ

သတ်မှတ်ထားသော runlevel ထဲသို့ဝင်သောအခါအဆိုပါဖြစ်စဉ်ကိုတခါကွပ်မျက်ခံရလိမ့်မည်။

ဘိနပ်

အဆိုပါဖြစ်စဉ်ကို system ကို Boot တက်နေစဉ်အတွင်းကွပ်မျက်ခံရလိမ့်မည်။ အဆိုပါ runlevels လယ်ကိုလျစ်လျူရှုနေပါတယ်။

bootwait

အဆိုပါဖြစ်စဉ်ကိုသူ့ရဲ့ရပ်စဲ (ဥပမာ / etc / RC) အတွက် init စောင့်နေစဉ် system ကို Boot တက်နေစဉ်အတွင်းကွပ်မျက်ခံရလိမ့်မည်။ အဆိုပါ runlevels လယ်ကိုလျစ်လျူရှုနေပါတယ်။

သွား

ဤသည်ဘာမျှမပါဘူး။

ဝယ်လိုအားအပေါ်

သတ်မှတ်ထားသော ondemand runlevel ဟုခေါ်သည့်အခါတိုင်းတစ်ဦး ondemand runlevel နှင့်အတူမှတ်သားတစ်ဦးကဖြစ်စဉ်ကိုကွပ်မျက်လိမ့်မည်။ သို့သျောလညျးအဘယ်သူမျှမ runlevel ပြောင်းလဲမှု (ondemand runlevels `တစ် '` ခ' နှင့် `က c '' ရှိပါတယ်) ဖြစ်ပေါ်ပါလိမ့်မယ်။

initdefault

တစ်ဦး initdefault entry ကို system ကို Boot တက်ပြီးနောက်ထဲသို့ဝင်ရပါမည်သည့် runlevel သတ်မှတ်ပါတယ်။ အဘယ်သူမျှမတည်ရှိခဲ့လျှင်, init console ကိုအပေါ်တစ်ဦး runlevel တောင်းပါလိမ့်မယ်။ အဆိုပါဖြစ်စဉ်ကိုလယ်ပြင်ကိုလျစ်လျူရှုနေပါတယ်။

sysinit

အဆိုပါဖြစ်စဉ်အတွင်းမှာကွပ်မျက်ခံရပါလိမ့်မည် သည့်စနစ် Boot တက် ။ ဒါဟာမဆို Boot တက်သို့မဟုတ် bootwait entries တွေကိုမတိုင်မီကွပ်မျက်ခံရလိမ့်မည်။ အဆိုပါ runlevels လယ်ကိုလျစ်လျူရှုနေပါတယ်။

powerwait

ပါဝါကျသွားသည့်အခါအဆိုပါဖြစ်စဉ်ကိုကွပ်မျက်လိမ့်မည်။ init များသောအားဖြင့်ကွန်ပျူတာသို့ချိတ်ဆက်နေတဲ့ UPS ဖို့ပြောနေတာလုပ်ငန်းစဉ်အားဖြင့်ဤအကြောင်းကိုအကြောင်းကြားသည်။ init ဆက်လက်မလုပ်ဆောင်မီအပြီးသတ်ဖို့လုပ်ငန်းစဉ်များအတွက်စောင့်ဆိုင်းပါလိမ့်မယ်။

powerfail

powerwait သည် init လုပ်ငန်းစဉ်ရဲ့အပြီးစီးမှုအတွက်စောင့်ဆိုင်းတော်မမူကြောင်း မှလွဲ. ။

powerokwait

ဤလုပ်ငန်းစဉ်အဖြစ်မကြာမီ init ပါဝါပြန်လည်ထိန်းသိမ်းခဲ့တာကို informormed ကြောင့်ကွပ်မျက်ခံရလိမ့်မည်။

powerfailnow

init ပြင်ပ UPS ၏ဘက်ထရီနီးပါးဗလာဖြစ်နေသည်နဲ့ပါဝါပျက်ကွက်နေသည် (အပြင်ပ UPS နှင့်စောင့်ကြည့်လေ့လာရေးလုပ်ငန်းစဉ်ကိုဒီအခွအေနေ detect နိုင်ဖြစ်ကြောင်းပေးအပ်) ထိုပြောသည်သောအခါဤလုပ်ငန်းစဉ်ကွပ်မျက်ခံရလိမ့်မည်။

ctrlaltdel

init အဆိုပါ SIGINT signal ကိုလက်ခံရရှိသည့်အခါလုပ်ငန်းစဉ်ကွပ်မျက်ခံရလိမ့်မည်။ ဤအမှုစနစ် console ကိုအပေါ်တစ်စုံတစ်ဦးက CTRL-ALT-DEL key combination ကိုဖိထားပြီးဆိုလိုသည်။ ပုံမှန်အားဖြင့်တဦးတည်း Single-အသုံးပြုသူအဆင့်သို့ရဖို့ဖြစ်စေပိတ်အချို့ကိုမျိုး execute ဖို့ဒါမှမဟုတ်စက်ကို reboot လုပ်ဖို့လိုသည်။

kbrequest

init အထူး key combination ကို console ကိုကီးဘုတ်ပေါ်နှိပ်ခဲ့ကီးဘုတ် handler ကိုကနေ signal ကိုလက်ခံရရှိသည့်အခါလုပ်ငန်းစဉ်ကွပ်မျက်ခံရလိမ့်မည်။

ဒီ function ကိုများအတွက်မှတ်တမ်းတင်သေးပြီးပြည့်စုံမျှမက, ပိုပြီးစာရွက်စာတမ်းများ (လတ်တလော kbd-0.94 ခဲ့တာကဒီအရေးအသား၏ထိုအချိန်က) ကို kbd-x.xx packages များတွင်တွေ့နိုင်ပါသည်။ အခြေခံအားဖြင့်သင် "KeyboardSignal" အရေးယူမှုအချို့ကိုကီးဘုတ်ပေါင်းစပ် map ချင်တယ်။ ဥပမာအားဖြင့်, ဤရည်ရွယ်ချက်အဘို့အ Alt-Uparrow map ရန်သင့်ကီးမြေပုံကိုဖိုင်ထဲတွင်အောက်ပါအသုံးပြုနိုင်သည်:

alt + keycode 103 = KeyboardSignal

ဥပမာများ

ဤသည်အဟောင်းကို Linux ကို inittab ပုံနဲ့ဆင်တူတဲ့ inittab ၏ဥပမာတစ်ခုဖြစ်ပါသည်:

linux ကိုအိုင်ဒီများအတွက် # inittab: 1: initdefault: RC :: bootwait: / etc / RC 1: 1: respawn: / etc / Getty 9600 tty1 2: 1: respawn: / etc / Getty 9600 tty2 3: 1: respawn: / etc / Getty 9600 tty3 4: 1: respawn: / etc / Getty 9600 tty4

ဤသည် inittab file ကို Boot တက်နေစဉ်အတွင်း / etc / rc ပေး. စီရင်ခြင်းနှင့် tty1-tty4 အပေါ် Getty စတင်သည်။

ကွဲပြားခြားနားသော runlevels နှင့်အတူတစ်ဦးထက်ပိုသောပီပီ inittab (အတွင်းပိုင်းမှတ်ချက်များကိုကြည့်ပါ):

2:: initdefault: # စနစ်စတင်ခြင်းအရာအားလုံးထက်မတိုင်မီအိုင်ဒီအတွက် run ဖို့ # အဆင့်။ si :: sysinit: /etc/rc.d/bcheckrc # Runlevel 0,6 1 ပြုပြင်ထိန်းသိမ်းမှု mode ကိုဖြစ်ပါသည်, ရပ်တန့် reboot လုပ်ဖြစ်ပါတယ်။ l0: 0: စောင့်ဆိုင်း: /etc/rc.d/rc.halt L1: 1: စောင့်ဆိုင်း: /etc/rc.d/rc.single L2: 2345: စောင့်ဆိုင်း: /etc/rc.d/rc.multi l6: 6: စောင့်ဆိုင်း: /etc/rc.d/rc.reboot # ကို "3 လက်ညှိုးကိုအလေးပြု" မှာဘာလုပ်ဖို့။ ca ကို :: ctrlaltdel: ယခု # Runlevel 2 & 3 -rf / sbin / shutdown ချ -t5: modem port ကိုအပေါ် console ကိုအပေါ် Getty, အဆငျ့ 3 ကိုလည်း Getty ။ 23:: 1 respawn: / sbin / Getty tty1 VC ကို linux ကို 2: 23: respawn: / sbin / Getty tty2 VC ကို linux ကို 3: 23: respawn: / sbin / Getty tty3 VC ကို linux ကို 4: 23: respawn: / sbin / Getty tty4 VC ကို linux ကို S2: 3: respawn: / sbin / uugetty ttyS2 M19200

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

init (8), telinit ( 8)

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