30.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 per default con Red Hat Enterprise Linux.

30.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 per default con 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, cercate 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, modifcate /etc/inittab come root.

Avvertimento

State attenti quando modificate il file /etc/inittab. Errori semplici possono causare l'impossibilità di riavvio del sistema. Se si verifica quanto detto, usate un dischetto di avvio, immettete la modalità utente singolo, o la madalità rescue e riparate il file.
Per maggiori informazioni sulla modalità rescue ed utente singolo, consultate il capito Ripristino di base del sistema nella Red Hat Enterprise Linux Deployment Guide.
It is possible to change the default runlevel at boot time by modifying the arguments passed by the boot loader to the kernel. For information on changing the runlevel at boot time, refer to Sezione 9.8, «Changing Runlevels at Boot Time».