Re: Runlevel
Hello Alessandro,
On Sat, Jul 31, 2004 at 08:12:53PM +0200, Vampir0 Ner0 wrote:
[...]
> Anche il 2 è monoutente, mentre il 3 è multiutente ma parte da shell.
> Differenza tra 4 e 5?
Ho pensato di allegarti la spiegazione dei runlevel presenti sulle FAQ
Debian che dovrebbe fornirti un po' di indicazioni:
........
10.5 Ogni distribuzione sembra avere un metodo di avvio differente.
Parlatemi di quello di Debian.
Come tutti gli Unix, Debian si avvia eseguendo il programma init. Il
file di configurazione per init (che è /etc/inittab) specifica che il
primo script da eseguire dovrebbe essere /etc/init.d/rcS. Questo
script esegue tutti gli script in /etc/rcS.d/ usando il comando source
o generando un sottoprocesso, a seconda della loro estensione, per
effettuare un'inizializzazione come verificare e montare i file
system, caricare moduli, avviare i servizi di rete, impostare
l'orologio ed effettuare altre inizializzazioni. Poi, per
compatibilità, esegue anche i file (eccetto quelli con un '.' nel nome
del file) dentro /etc/rc.boot/. Ogni script in quest'ultima directory
è solitamente riservato all'uso da parte degli amministratori di
sistema e usarli nei pacchetti è deprecabile.
Dopo aver completato il processo di avvio, init esegue tutti gli
script di avvio dentro una directory specificata dal livello di
esecuzione (runlevel) predefinito (questo runlevel è dato dalla voce
id in /etc/inittab). Come la maggior parte degli Unix compatibili con
il System V, Linux ha 7 runlevel:
* 0 Halt (ferma il sistema),
* 1 (modalità singolo-utente),
* 2 fino a 5 (varie modalità multi-utente) e
* 6 Reboot (riavvia il sistema).
I sistemi Debian funzionano con id=2, che indica che il runlevel
predefinito sarà '2' quando si entra nello stato di multi-utente, e
che gli script in /etc/rc2.d/ verranno eseguiti.
Infatti, gli script in ognuna delle directory, /etc/rcN.d/ sono solo
link simbolici agli script in /etc/init.d/. Comunque, i nomi dei file
in ognuna delle directory /etc/rcN.d/ sono selezionati per indicare il
modo in cui gli script in /etc/init.d/ verranno eseguiti.
Specificatamente, prima di entrare in ogni runlevel, tutti gli script
che iniziano con 'K' (Kill) sono eseguiti; questi script uccidono i
servizi. Poi vengono eseguiti tutti gli script che iniziano con
'S'(Start); questi script avviano i servizi. Il numero a due cifre che
segue la 'K' o la 'S' indica l'ordine in cui lo script sarà eseguito.
Gli script con un numero minore sono eseguiti prima.
Questo approccio funziona perché tutti gli script dentro a etc/init.d/
accettano un argomento che può essere 'start, 'stop', 'reload',
'restart' o 'force-reload' e svolgeranno poi il compito indicato
dall'argomento. Questi script possono essere usati anche dopo che un
sistema è stato avviato, per controllare vari processi.
Per esempio, con l'argomento 'reload' il comando
/etc/init.d/sendmail reload
invia al daemon sendmail un segnale di rileggere il suo file di
configurazione.
........
Au Revoire
Hugh Hartmann
Reply to: