Inittab
Il file inittab, nei sistemi GNU/Linux, è un file di configurazione che permette di configurare il comportamento del processo init.
Si trova all'interno della cartella /etc (secondo lo standard FHS) ed è di proprietà dell'utente amministratore (root).
Descrizione
modificaIl file permette di scegliere cosa far partire in base al runlevel in cui il sistema si è portato (per saperlo digitare il comando runlevel
) e la sua struttura è composta da campi separati dal delimitatore ":".
Un esempio del file può essere:
id:2:initdefault: l0:0:wait:/etc/init.d/rc 0 l1:1:wait:/etc/init.d/rc 1 l2:2:wait:/etc/init.d/rc 2 l3:3:wait:/etc/init.d/rc 3 l4:4:wait:/etc/init.d/rc 4 l5:5:wait:/etc/init.d/rc 5 l6:6:wait:/etc/init.d/rc 6 pf::powerwait:/etc/init.d/powerfail start pn::powerfailnow:/etc/init.d/powerfail now po::powerokwait:/etc/init.d/powerfail stop 1:2345:respawn:/sbin/getty 38400 tty1 2:23:respawn:/sbin/getty 38400 tty2 3:23:respawn:/sbin/getty 38400 tty3 4:23:respawn:/sbin/getty 38400 tty4 5:23:respawn:/sbin/getty 38400 tty5 6:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty6
Vediamo che ogni riga è composta dai seguenti campi:
id:runlevel:action:process
- id: è un'etichetta per segnalare il tipo di azione
- runlevel: indica quali runlevel sono coinvolti per quella azione
- action: indica il tipo di azione da effettuare
- process: indica il processo da eseguire
Nel caso sopra riportato viene indicato:
- che il runlevel di default è il 2 mediante l'azione initdefault
- che in base al runlevel in cui si vuole andare viene eseguito lo script
/etc/init.d/rc
passandogli il numero di runlevel mediante l'azione wait per dire di eseguire lo script all'avvio del runlevel e che init aspetta che termini - che se ci sono variazioni sulla corrente al sistema (in genere segnali inviati da un UPS) viene eseguito lo script
/etc/init.d/powerfail
che si comporta di conseguenza - che viene lanciato il processo
getty
collegato ai terminali (che è possibile vedere premendoCtrl-Alt-F[1-6]
) mediante l'azione respawn, cioè viene riavviato ogni volta che termina; nel caso in esame il terminale tty1 si trova nei runlevel 2,3,4,5 gli altri terminali si trovano sempre nei runlevel 2 e 3 (si può vedere che sono attivi mediante il comandops aux|grep getty
)
Per ulteriori dettagli è possibile consultare la pagina di manuale man inittab
.
Attenzione: nella distribuzione Ubuntu, a partire dalla versione 6.10 (Edgy Eft) il file inittab non è più presente, sostituito dal sistema upstart.