Inittab-Linux / Unix naredba

inittab - format inittab datoteke koju koristi sysv-compatible init proces

Opis

Inittab datoteka opisuje koji se procesi pokreću pri pokretanju i tijekom normalnog rada (npr. /etc/init.d/boot, /etc/init.d/rc, gettys ...). Init (8) razlikuje više pokretnih nizova , od kojih svaki može imati svoj vlastiti skup procesa koji se pokreću. Važeće runlevels su 0 - 6 plus A , B i C za unose na zahtjev . Unos u inittab datoteci ima sljedeći format:

ID: runlevels: djelovanje: postupak

Linije koje počinju s "#" zanemaruju se.

id je jedinstveni slijed od 1-4 znakova koji identificira unos u inittab (za verzije sysvinit sastavljene s knjižnicama <5.2.18 ili biblioteke a.out ograničenje je 2 znaka).

Napomena: Za gettys ili druge postupke prijave, polje id treba biti tty sufiks odgovarajućeg tty, npr. 1 za tty1 . Inače, računovodstvo prijave možda neće raditi ispravno.

Runlevels navodi runlevels za koje je potrebno specificirati akciju.

akcija opisuje koju bi akciju trebalo poduzeti.

proces određuje proces koji treba izvršiti. Ako polje procesa započinje znakom "+", init neće učiniti utmp i wtmp računovodstvo za taj proces. To je potrebno za gettys koji inzistiraju na tome da rade svoje vlastite utmp / wtmp domaćinstva. Ovo je također povijesni bug.

Polje runlevels može sadržavati više znakova za različite runlevelove. Na primjer, 123 navodi da se postupak treba pokrenuti u runlevelovima 1, 2 i 3. Runlevels for ondemand entries može sadržavati A , B ili C. Polje sysinit , boot , i stavke čarobnjaka za pokretanje se ignoriraju.

Kad se promijeni runlevel sustava, svi pokrenuti procesi koji nisu specificirani za novu runlevel pogubljeni, prvo SIGTERM, a zatim SIGKILL.

Valjane radnje za polje radnje su:

respawn

Postupak će se ponovo pokrenuti svaki put kad završi (npr. Getty).

čekati

Postupak će se pokrenuti jednom kada se navedena runlevel unese i init će čekati njegovo raskidanje.

jednom

Postupak će se izvršiti jednom kada se unese specificirana runlevel.

čizma

Postupak će se izvršiti tijekom podizanja sustava. Polje runlevels se ignorira.

bootwait

Proces će biti izvršen tijekom podizanja sustava, dok init čeka njegovo raskidanje (npr. / Etc / rc). Polje runlevels se ignorira.

od

Ovo ne čini ništa.

na zahtjev

Postupak koji je označen s ondemand runlevelom izvršit će se kad god se naznači navedena ondemand runlevel. Međutim, neće se pojaviti promjena veličine redosljeda ( ondemand runlevels su "a", "b" i "c").

initdefault

Initdefault unos određuje runlevel koji treba unijeti nakon podizanja sustava. Ako ne postoji, init će tražiti pokretnu razinu na konzoli. Polje postupka zanemaruje se.

sysinit

Postupak će se izvršiti tijekom podizanja sustava . To će biti izvršeno prije bilo kakvih unosa čizma ili bootwait . Polje runlevels se ignorira.

powerwait

Postupak će se izvršiti kad se snaga smanji. O tome obično obavještavamo o procesu koji govori o UPS-u koji je povezan s računalom. Init će čekati da proces završi prije nastavka.

powerfail

Što se tiče powerwait , osim što init ne čeka završetak procesa.

powerokwait

Ovaj će proces biti izvršen čim se informira da je snaga obnovljena.

powerfailnow

Ovaj proces će se izvršiti kada se prijavi da je baterija vanjskog UPS-a gotovo prazna, a napajanje ne radi (pod uvjetom da vanjski UPS i proces nadzora mogu otkriti taj uvjet).

ctrlaltdel

Postupak će se izvršiti kada init prima signal SIGINT. To znači da je netko na konzoli sustava pritisnuo kombinaciju tipki CTRL-ALT-DEL . Obično se želi izvršiti neku vrstu isključivanja kako bi se ušli u razinu jednog korisnika ili ponovno pokrenuli uređaj.

kbrequest

Postupak će se izvršiti kada init primi signal od rukovatelja tipkovnice da je na tipkovnici konzole pritisnuta posebna kombinacija tipki.

Dokumentacija za tu funkciju još nije dovršena; više dokumentacije može se naći u kbd-x.xx paketi (najnoviji je bio kbd-0.94 u vrijeme ovog pisanja). Uglavnom želite mapirati neku kombinaciju tipkovnice s akcijom "KeyboardSignal". Na primjer, za mapiranje Alt-Uparrowa u tu svrhu upotrijebite sljedeće u svojoj datoteci keymaps:

alt keycode 103 = KeyboardSignal

PRIMJERI

Ovo je primjer inittab koji sliči stari Linux inittab:

# inittab za Linux ID: 1: initdefault: rc :: bootwait: / etc / rc 1: 1: respawn: / etc / getty 9600 tty1 2: 1: respawn: / etc / getty 9600 tty2 3: etc / getty 9600 tty3 4: 1: respawn: / etc / getty 9600 tty4

Ova inittab datoteka izvodi / etc / rc tijekom pokretanja i pokreće gettys na tty1-tty4.

Složenije inittab s različitim runlevelovima (vidi komentare unutar):

# Razina za pokretanje u ID: 2: initdefault: # Inicijalizacija sustava prije svega. si :: sysinit: /etc/rc.d/bcheckrc # Runlevel 0,6 je zaustavljen i ponovno podizanje sustava, 1 je način održavanja. l0: 0: pričekajte: /etc/rc.d/rc.halt l1: 1: pričekajte: /etc/rc.d/rc.single l2: 2345: pričekajte: /etc/rc.d/rc.multi l6: 6: pričekajte: /etc/rc.d/rc.reboot # Što učiniti na "3 finger salute". ca: ctrlaltdel: / sbin / shutdown -t5 -rf sada # Runlevel 2 & 3: getty na konzoli, razina 3 također getty na modemu. 1: 23: respawn: / sbin / getty tty1 VC linux 4: 23: respawn: / sbin / getty tty4: / sbin / getty tty2 VC linux 3:23 VC linux S2: 3: respawn: / sbin / uugetty ttyS2 M19200

Vidi također

init (8), telinit ( 8)

Važno: Upotrijebite naredbu čovjek ( % man ) kako biste vidjeli kako se naredba koristi na vašem računalu.