inittab

Autres langues

Langue: it

Version: 4 giugno 1996 (openSuse - 09/10/07)

Section: 5 (Format de fichier)

NOME

inittab - formato del file inittab file usato dai processi init compatibili con il System V

DESCRIZIONE

Il file inittab descrive quali processi sono avviati all'avvio e durante le normali operazioni (p.es. /etc/rc, getty...). Init distingue tra diversi runlevel, ognuno dei quali può avere il suo insieme di processi da avviare. I runlevel validi sono 0-6 e A, B e C per le voci ondemand ("su richiesta"). Una voce nel file inittab ha il seguente formato:

id:runlevel:azione:processo
Le righe che iniziano con `#' sono ignorate.
id
è una sequenza unica di 1-4 caratteri che identifica una voce nell'inittab (per versioni di sysvinit compilare con librerie < 5.2.18 o librerie a.out il limite è di 2 caratteri).

Nota: Per getty o altri processi di login, il campo id dovrebbe essere il suffisso a tty della tty corrispondente, p.es. 1 per tty1. Altrimenti, la registrazione del login potrebbe non funzionare correttamente.

runlevel
descrive in quali runlevel dovrebbe essere intrapresa l'azione specificata.
azione
descrive quale azione dovrebbe essere intrapresa.
processo
specifica il processo da eseguire. Se il campo processo inizia con il carattere `+', init non effettuerà la registrazione utmp e wtmp per quel processo. Questo è necessario per le getty che insistono nel voler tenere il proprio utmp/wtmp. Questo è anche un bug storico.

Le azioni valide sono:

respawn
Il processo sarà riavviato quando termina (p.es. getty).
wait
Il processo sarà avviato quando si entra nel runlevel specificato e init attenderà la sua terminazione.
once
Il processo sarà eseguito solo una volta quando si entra nel runlevel specificato.
boot
Il processo sarà eseguito durante il boot del sistema. Il campo runlevel è ignorato.
bootwait
Il processo sarà eseguito durante il boot del sistema, mentre init aspetta la sua terminazione (p.es. /etc/rc). Il campo runlevel è ignorato.
off
Non fa niente.
ondemand
Un processo marcato con un runlevel ondemand (su richiesta) sarà eseguito ogni volta che è chiamato il runlevel ondemand specificato. Comunque, non avverrà nessun cambio di runlevel (i runlevel ondemand sono 'a', 'b' e 'c').
initdefault
Una voce initdefault specifica il runlevel nel quale si dovrebbe entrare dopo il boot del sistema. Se non ne esiste nessuna, init chiederà in console un runlevel. Il campo processo è ignorato.
sysinit
Il processo sarà eseguito durante il boot del sistema. Sarà eseguito prima di qualsiasi voce boot o bootwait. Il campo runlevel è ignorato.
powerwait
Il processo sarà eseguito quando init riceve il signal SIGPWR, che indica che c'è qualcosa che non va nell'alimentazione. Init aspetterà che il processo finisca prima di continuare.
powerfail
Come powerwait, ma init non aspetterà la terminazione del processo.
powerokwait
Il processo sarà eseguito quando init riceve il signal SIGPWR, purché ci sia un file chiamato /etc/powerstatus contenente la parola OK. Ciò significa che l'alimentazione è ritornata.
ctrlaltdel
Il processo sarà eseguito quando init riceve il signal SIGINT. Ciò significa che qualcuno nella console del sistema ha premuto la combinazione di tasti CTRL-ALT-DEL. Tipicamente si vuole eseguire un qualche tipo di shutdown o portare il sistema in single-user level oppure rebootare la macchina.
kbrequest
Il processo sarà eseguito quando init riceve un segnale dall'handler della tastiera che indica che una particolare combinazione di tasti è stata premuta nella tastiera della console.
La documentazione per questa funzione non è ancora completa; maggiore documentazione la si può trovare nei pacchetti kbd-x.xx (quando scrivevo questo manuale il più recente era kbd-0.91). In parole povere, se si vuole, ad esempio, mappare qualche combinazioni di tasti per eseguire l'azione "Spawn_Console". Per esempio per mappare Alt-Uparrow per questa azione si usi quanto segue nel proprio keymap file:

alt keycode 103 = Spawn_Console

Il campo runlevel può contenere più caratteri per i diversi runlevel, p.es. 123 se il processo dovrebbe essere avviato nei runlevel 1, 2 e 3. Le voci ondemand possono contenere un A, B o C. I campi runlevel delle voci sysinit, boot e bootwait sono ignorati.

Quando è cambiato il runlevel, qualsiasi processo in esecuzione che non è specificato anche per il nuovo runlevel è killato, prima con SIGTERM, e poi con SIGKILL.

ESEMPI

Questo è un esempio di un inittab che assomiglia al vecchio inittab di Linux:


# inittab per 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

Questo file inittab esegue /etc/rc durante il boot e lancia getty su tty1-tty4.

Un inittab più elaborato con diversi runlevel (si vedano i commenti all'interno):



# Livello in cui si entra

id:2:initdefault:



# Inizializzazione del sistema prima di ogni altra cosa.

si::sysinit:/etc/rc.d/bcheckrc



# I runlevel 0,6 sono halt e reboot, 1 è il modo per la 

# manutenzione

l0:0:wait:/etc/rc.d/rc.halt

l1:1:wait:/etc/rc.d/rc.single

l2:2345:wait:/etc/rc.d/rc.multi

l6:6:wait:/etc/rc.d/rc.reboot



# Cosa fare al "3 finger salute".

ca::ctrlaltdel:/sbin/shutdown -t5 -rf now



# Runlevel 2&3: getty sulla console, il livello 3 fa ha 

# anche getty sulla porta del 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



FILE

/etc/inittab

AUTORE

Init è stato scritto da Miquel van Smoorenburg (miquels@cistron.nl), la pagina di manuale è stata scritta da Sebastian Lederer (lederer@francium.informatik.uni-bonn.de) e modificata da Michael Haardt (u31b3hs@pool.informatik.rwth-aachen.de).
Traduzione di Giovanni Bortolozzo <borto@dei.unipd.it>

VEDERE ANCHE

init(8), telinit(8)