Translation(s): Deutsch - English - Français - Italiano


Generale

Un runlevel Linux controlla quali processi o servizi vengono avviati dal sistema automaticamente (o da init per essere più precisi). Il runlevel è una cifra da 0 a 6 o la lettera S; i runlevel 0, 6 e S sono riservati rispettivamente per lo spegnimento, il riavvio e la modalità utente singolo. Qui l'automazione è la parola chiave perché tutti i servizi possono essere avviati manualmente in seguito.

Debian definisce sette runlevel (0-6).

 0 (arresta il sistema) 
 1 (single user, modalità minimale) 
 dal 2 al 5 (modalità multiutente) 
 6 (riavvia il sistema) 

L'installazione predefinita di Debian non fa alcuna differenza tra i runlevel da 2 a 5, è possibile personalizzarli a proprio piacimento. I runlevel S (single) e 1 sono utilizzati per la manutenzione, avviano un numero minimo di servizi per evitare possibili problemi.

Runlevel e avvio

Nota bene: questo è cambiato a partire da systemd. /etc/inittab non viene più usato.

Il sistema parte con il runlevel specificato nel file /etc/inittab, ad esempio id:2:initdefault: lo avvia sul runlevel 2 (il predefinito in Debian).

È possibile aggirare la configurazione predefiinta con un parametro del kernel; quando viene visualizzato il menu di avvio selezionare l'opzione di modifica, quindi identificare la riga del kernel e aggiungervi al fondo il numero desiderato; esempio: con "kernel /boot/vmlinuz-2.6.30 root=/dev/sda2 ro 3" partirà con il runlevel 3.

Modificare i runlevel

I runlevel possono essere modificati manualmente attraverso gli script di controllo in /etc/init.d e i collegamenti simbolici in /etc/rc0.d ... /etc/rc6.d; per le istruzioni si prega di consultare i riferimenti a fondo pagina. Dal momento che la modifica manuale risulta noiosa si consiglia di utilizzare un editor di runlevel come sysv-rc-conf, sarà quindi possibile modificare il runlevel semplicemente aprendo il terminale come root ed eseguendo il programma.

Durante l'esecuzione

È possibile cambiare il runlevel anche in fase di esecuzione tramite init [runlevel] o telinit [runlevel], quest'ultimo è preferito. Usare solo i livelli da 1 a 5.

Si veda anche


CategoryBootProcess