Inittab-Linux / Unix Command

inittab - format al fișierului inittab utilizat de procesul init compatibil cu sysv

Descriere

Fișierul inittab descrie procesele care se pornesc la bootup și în timpul funcționării normale (de exemplu, /etc/init.d/boot, /etc/init.d/rc, gettys ...). Init (8) distinge mai multe runlevelle , fiecare dintre ele putând avea un set propriu de procese care sunt inițiate. Nivelele de alertă valide sunt 0 - 6 plus A , B și C pentru intrările la cerere . O intrare în fișierul inittab are următorul format:

id: runlevels: acțiune: proces

Linile care încep cu "#" sunt ignorate.

id este o secvență unică de 1-4 caractere care identifică o intrare în inittab (pentru versiunile de sysvinit compilate cu biblioteci <5.2.18 sau a.out libraries limita este de 2 caractere).

Notă: Pentru gettys sau alte procese de conectare, câmpul id trebuie să fie sufixul tty al tty corespunzător, de exemplu 1 pentru tty1 . În caz contrar, este posibil ca contabilitatea de conectare să nu funcționeze corect.

runlevels listează nivelurile de execuție pentru care ar trebui luată acțiunea specificată.

acțiunea descrie acțiunile care trebuie întreprinse.

procesul specifică procesul care trebuie executat. Dacă câmpul de proces începe cu un caracter "+", init nu va face utmp și wtmp pentru acest proces. Acest lucru este necesar pentru gettys care insista pe a face propriile lor utmp / wtmp gospodărie. Acesta este și un bug istoric.

Câmpul runlevels poate conține mai multe caractere pentru diferite runlevels. De exemplu, 123 specifică faptul că procesul trebuie pornit la nivelurile de execuție 1, 2 și 3. Nivelurile de rulare pentru intrările la cerere pot conține un A , B sau C. Câmpul de niveluri de rute a intrărilor de sysinit , boot și bootwait este ignorat.

Când se modifică nivelul de execuție al sistemului, toate procesele care nu sunt specificate pentru noul nivel de execuție sunt ucise, mai întâi cu SIGTERM, apoi cu SIGKILL.

Acțiunile valide pentru câmpul de acțiune sunt:

respawn

Procesul va fi repornit ori de câte ori se termină (de exemplu, getty).

aștepta

Procesul va fi pornit o dată când nivelul de alertare specificat este introdus și init va aștepta terminarea acestuia.

o singura data

Procesul va fi executat o singură dată când se introduce nivelul de execuție specificat.

cizmă

Procesul va fi executat în timpul încărcării sistemului. Câmpul nivelurilor de alergare este ignorat.

bootwait

Procesul va fi executat în timpul încărcării sistemului, în timp ce init așteaptă terminarea acestuia (de ex. / Etc / rc). Câmpul nivelurilor de alergare este ignorat.

de pe

Acest lucru nu face nimic.

la cerere

Un proces marcat cu un nivel de execuție la cerere va fi executat ori de câte ori este apelat nivelul de alertă la cerere . Cu toate acestea, nu se va produce nici o schimbare la nivelul nivelului de rulare ( rundele la cerere sunt "a", "b" și "c").

initdefault

O intrare initdefault specifică nivelul de execuție care trebuie introdus după boot-ul sistemului. Dacă nu există nici unul, init va cere un nivel de execuție pe consola. Câmpul procesului este ignorat.

sysinit

Procesul va fi executat în timpul încărcării sistemului . Acesta va fi executat înainte de orice introducere boot sau bootwait . Câmpul nivelurilor de alergare este ignorat.

powerwait

Procesul va fi executat atunci când puterea va scădea. Init este de obicei informat despre acest lucru printr-un proces de conversație cu un UPS conectat la computer. Init va aștepta finalizarea procesului înainte de a continua.

powerfail

În ceea ce privește powerwait , cu excepția faptului că init nu așteaptă finalizarea procesului.

powerokwait

Acest proces va fi executat imediat ce init este informat că puterea a fost restabilită.

powerfailnow

Acest proces va fi executat atunci când se afirmă că bateria UPS-ului extern este aproape goală și că energia este defectă (cu condiția ca UPS-ul extern și procesul de monitorizare să poată detecta această condiție).

ctrlaltdel

Procesul va fi executat când init primește semnalul SIGINT. Aceasta înseamnă că cineva din consola de sistem a apăsat combinația de taste CTRL-ALT-DEL . În mod obișnuit, cineva dorește să execute un fel de închidere fie pentru a intra în nivelul unui singur utilizator, fie pentru a reporni mașina.

kbrequest

Procesul va fi executat când init primește un semnal de la handler-ul tastaturii că o tastă combinată a fost apăsată pe tastatura consolei.

Documentația pentru această funcție nu este încă completă; mai multe documente pot fi găsite în pachetele kbd-x.xx (cea mai recentă a fost kbd-0.94 la momentul acestei scrieri). În principiu, doriți să mapați o anumită combinație de taste la acțiunea "KeyboardSignal". De exemplu, pentru a mapa Alt-Uparrow în acest scop, utilizați următoarele în fișierul keymap:

alt keycode 103 = TastaturăSignal

EXEMPLE

Acesta este un exemplu de inittab care seamănă cu vechea inittab Linux:

# inittab pentru linux id: 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

Acest fișier inittab execută / etc / rc în timpul încărcării și începe gettys pe tty1-tty4.

Un inittab mai elaborat cu diferite runlevels (vedeți comentariile din interior):

# Nivel pentru a rula în id: 2: initdefault: # Inițializare sistem înainte de orice altceva. si :: sysinit: /etc/rc.d/bcheckrc # Runlevel 0,6 este oprit și repornit, 1 este modul de întreținere. l0: 0: așteptați: /etc/rc.d/rc.halt l1: 1: așteptați: /etc/rc.d/rc.single l2: 2345: așteptați: /etc/rc.d/rc.multi l6: 6: așteptați: /etc/rc.d/rc.reboot # Ce să faceți la "salutul cu 3 degete". ca :: ctrlaltdel: / sbin / shutdown -t5 -rf acum # Runlevel 2 & 3: getty pe consola, nivelul 3, de asemenea getty pe portul de modem. 1: 23: 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

Vezi si

init (8), telinit ( 8)

Important: Utilizați comanda om ( % man ) pentru a vedea cum se utilizează o comandă pe computerul dvs. particular.