F.4. SysV Init Runlevels

Il sistema di runlevel SysV init fornisce un processo standard per controllare quale programma init viene avviato o interrotto per un runlevel particolare. SysV init è stato scelto perchè è piè semplice da utilizzare e più flessibile del processo tradizionale a stile BSD init.
I file di configurazione di SysV init si trovano in /etc/rc.d/. In questa directory troverete gli script rc, rc.local, rc.sysinit e facoltativamente gli script rc.serial e le seguenti directory:
init.d/ rc0.d/ rc1.d/ rc2.d/ rc3.d/ rc4.d/ rc5.d/ rc6.d/
La directory init.d/ contiene gli script utilizzati dal comando /sbin/init durante il controllo dei servizi. Ognuna delle directory numerate rappresentano i sei runlevel configurati in modo predefinito per Red Hat Enterprise Linux.

F.4.1. Runlevel

Il concetto dietro i runlevel SysV init si basa sul fatto che è possibile utilizzare sistemi diversi in modi differenti. Per esempio, un server opera in modo più efficiente sulle risorse del computer creato dal sistema X Window, se esso non presenta alcun sovraccarico. Altre volte, un amministratore di sistema potrebbe avere il bisogno di operare in un runlevel minore per effettuare delle operazioni di diagnosi, come risolvere delle corruzioni sul disco in runlevel 1.
Le caratteristiche di ogni runlevel determinano quale servizio è interrotto e quale viene avviato dal comando init. Per esempio, runlevel 1 (modalità utente singolo) interrompe qualunque servizio di rete, mentre il runlevel 3 avvia questi servizi. Assegnando specifici servizi per l'interruzione o l'avvio di un particolare runlevel, init è in grado di modificare la modalità del computer senza che l'utente debba interrompere o avviare i servizi manualmente.
I seguenti runlevel sono definiti in modo predefinito in Red Hat Enterprise Linux:
  • 0 — Arresto
  • 1 — Modalità a utente singolo
  • 2 — Non utilizzato (definito dall'utente)
  • 3 — Modalità multiutente completa
  • 4 — Non utilizzato (definito dall'utente)
  • 5 — Modalità grafica multiutente completa (con schermata di login basata su X)
  • 6 — Riavvio
In generale, gli utenti eseguono Red Hat Enterprise Linux con un runlevel 3 o 5 — entrambi sono modalità utente multiplo complete. Talvolta gli utenti personalizzano i runlevel 2 e 4 per far fronte a requisiti specifici, in quanto i suddetti runlevel non vengono utilizzati.
Il runlevel predefinito per il sistema è scritto nel file /etc/inittab. Per scoprire il runlevel di default per un sistema, cercare la riga simile a quella riportata all'inizio del file /etc/inittab:
id:5:initdefault:
Il runlevel predefinito nell'esempio di cui sopra, è cinque, come indicato dal numero dopo i primi due punti. Per cambiarlo, modificare /etc/inittab come root.

Avvertimento

Stare attenti quando si modifica il file /etc/inittab. Errori semplici possono causare l'impossibilità di riavvio del sistema. Se si verifica quanto detto, usare un CD o DVD d'avvio, inserire la modalità utente singolo, o la madalità di ripristino e correggere il file.
Per maggiori informazioni sulle opzioni del kernel consultare Capitolo 36, Recupero di base del sistema.
È possibile modificare il runlevel predefinito al momento dell'avvio semplicemente modificando gli argomenti passati al kernel da parte del boot loader. Per informazioni su come modificare il runlevel al momento dell'avvio, consultare la Sezione E.8, «Modifica dei runlevel all'avvio».