1 508
contributi
S3v (discussione | contributi) Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|Debian Etch 4.0<br/>Debian Lenny 5.0<br/>Debian Squeeze 6.0|}} | {{Versioni compatibili|Debian Etch 4.0<br/>Debian Lenny 5.0<br/>Debian Squeeze 6.0|}} | ||
[[Categoria:Sistema]] | [[Categoria:Sistema]] | ||
==Struttura== | == Struttura == | ||
Debian ha scelto, come proprio sistema di boot, il SysV, che si distingue per la propria semplicità e potenza. | Debian ha scelto, come proprio sistema di boot, il SysV, che si distingue per la propria semplicità e potenza. | ||
Infatti, è basata su degli script sensibili a determinate azioni, che vengono linkati a delle directory predefinite (rappresentanti determinati runlevel ovvero livelli o stati a cui si trova la macchina). | Infatti, è basata su degli script sensibili a determinate azioni, che vengono linkati a delle directory predefinite (rappresentanti determinati runlevel ovvero livelli o stati a cui si trova la macchina). | ||
Esaminiamo nel dettaglio la struttura di questo interessante sistema, così da capire meglio cosa avviene esattamente al boot della macchina. | Esaminiamo nel dettaglio la struttura di questo interessante sistema, così da capire meglio cosa avviene esattamente al boot della macchina. | ||
==Gli script di <code>init.d</code>== | == Gli script di <code>init.d</code> == | ||
Nella directory <code>/etc/init.d</code> sono presenti degli script particolari: il loro compito è quello di gestire i demoni (o servizi, che dir si voglia) quindi di avviarli, fermarli, far rileggere i file di configurazione, controllarne lo stato, nel modo più semplice e comodo. | Nella directory <code>/etc/init.d</code> sono presenti degli script particolari: il loro compito è quello di gestire i demoni (o servizi, che dir si voglia) quindi di avviarli, fermarli, far rileggere i file di configurazione, controllarne lo stato, nel modo più semplice e comodo. | ||
Di default, infatti, sono sempre presenti 3 opzioni: | Di default, infatti, sono sempre presenti 3 opzioni: | ||
Riga 29: | Riga 29: | ||
ed il gioco è fatto!!! | ed il gioco è fatto!!! | ||
==I vari <code>rcX.d</code>== | == I vari <code>rcX.d</code> == | ||
Come accennato nell'introduzione, gli script sono linkati in alcune directory 'speciali', che ora analizzeremo. | Come accennato nell'introduzione, gli script sono linkati in alcune directory 'speciali', che ora analizzeremo. | ||
I nomi di queste directory sono sempre nella forma <code>rcX.d</code>, dove X rappresenta uno stato tra quelli seguenti: | I nomi di queste directory sono sempre nella forma <code>rcX.d</code>, dove X rappresenta uno stato tra quelli seguenti: | ||
==="0" Shutdown=== | === "0" Shutdown === | ||
Quando la macchina viene messa in questo stato, vengono arrestati tutti i demoni, smontate le periferiche e la macchina viene preparata per lo spegnimento. | Quando la macchina viene messa in questo stato, vengono arrestati tutti i demoni, smontate le periferiche e la macchina viene preparata per lo spegnimento. | ||
==="1" Single User=== | === "1" Single User === | ||
In questo stato, è consentito l'accesso ad un utente solo, e gran parte dei servizi non vengono avviati; è usato prevalentemente per la manutenzione straordinaria della macchina. | In questo stato, è consentito l'accesso ad un utente solo, e gran parte dei servizi non vengono avviati; è usato prevalentemente per la manutenzione straordinaria della macchina. | ||
==="2-5" Modalità Normali=== | === "2-5" Modalità Normali === | ||
In Debian non esistono distinzioni tra gli stati 2, 3, 4 e 5 e viene lasciata all'utente la possibilità di modificarli. Di default viene utilizzato il 2. | In Debian non esistono distinzioni tra gli stati 2, 3, 4 e 5 e viene lasciata all'utente la possibilità di modificarli. Di default viene utilizzato il 2. | ||
==="6" Reboot=== | === "6" Reboot === | ||
Quando la macchina viene portata in questo stato, viene preparata per un riavvio; avvengono tutte le cose indicate per <code>rc0.d</code>, ma viene inviato un segnale di reboot invece che di shutdown. | Quando la macchina viene portata in questo stato, viene preparata per un riavvio; avvengono tutte le cose indicate per <code>rc0.d</code>, ma viene inviato un segnale di reboot invece che di shutdown. | ||
==="S" Boot=== | === "S" Boot === | ||
Runlevel speciale, che viene eseguito sempre al boot della macchina, prima di passare al runlevel di default (in Debian è il 2). | Runlevel speciale, che viene eseguito sempre al boot della macchina, prima di passare al runlevel di default (in Debian è il 2). | ||
==Configurazione manuale dei runlevel== | == Configurazione manuale dei runlevel == | ||
===Configurazione del sistema=== | === Configurazione del sistema === | ||
Il sistema di gestione dei runlevel è configurabile tramite il file <code>'''/etc/inittab'''</code> (è presente una guida a questo file, accessibile tramite il comando <code>man inittab</code>). | Il sistema di gestione dei runlevel è configurabile tramite il file <code>'''/etc/inittab'''</code> (è presente una guida a questo file, accessibile tramite il comando <code>man inittab</code>). | ||
Riga 73: | Riga 73: | ||
; <code>comando</code> : il comando da eseguire. | ; <code>comando</code> : il comando da eseguire. | ||
====Runlevel di Default==== | ==== Runlevel di Default ==== | ||
<pre> | <pre> | ||
# The default runlevel. | # The default runlevel. | ||
Riga 81: | Riga 81: | ||
Per modificarlo è sufficiente modificare il numero racchiuso tra i caratteri '':''. | Per modificarlo è sufficiente modificare il numero racchiuso tra i caratteri '':''. | ||
====Script di inizializzazione del sistema==== | ==== Script di inizializzazione del sistema ==== | ||
<pre> | <pre> | ||
# Boot-time system configuration/initialization script. | # Boot-time system configuration/initialization script. | ||
Riga 92: | Riga 92: | ||
Lo script <code>'''/etc/init.d/rcS'''</code> ha la funzione di invocare tutti gli script <code>'''S*'''</code> contenuti in <code>'''/etc/rcS.d/'''</code> in ordine numerico/alfabetico. | Lo script <code>'''/etc/init.d/rcS'''</code> ha la funzione di invocare tutti gli script <code>'''S*'''</code> contenuti in <code>'''/etc/rcS.d/'''</code> in ordine numerico/alfabetico. | ||
====Comportamento in Modalità Singolo Utente==== | ==== Comportamento in Modalità Singolo Utente ==== | ||
<pre> | <pre> | ||
# What to do in single-user mode. | # What to do in single-user mode. | ||
Riga 99: | Riga 99: | ||
====Comportamento per ogni Runlevel==== | ==== Comportamento per ogni Runlevel ==== | ||
<pre> | <pre> | ||
# /etc/init.d executes the S and K scripts upon change | # /etc/init.d executes the S and K scripts upon change | ||
Riga 123: | Riga 123: | ||
Lo script <code>'''/etc/init.d/rc'''</code> si occupa di lanciare, in ordine numerico/alfabetico, gli script presenti in <code>'''/etc/rcX.d/'''</code>, partendo per quelli <code>'''K*'''</code> per passare a quelli <code>'''S*'''</code>; accetta come parametro il numero del runlevel. | Lo script <code>'''/etc/init.d/rc'''</code> si occupa di lanciare, in ordine numerico/alfabetico, gli script presenti in <code>'''/etc/rcX.d/'''</code>, partendo per quelli <code>'''K*'''</code> per passare a quelli <code>'''S*'''</code>; accetta come parametro il numero del runlevel. | ||
====Pressione di <code>CTRL + ALT + CANC</code>==== | ==== Pressione di <code>CTRL + ALT + CANC</code> ==== | ||
<pre> | <pre> | ||
# What to do when CTRL-ALT-DEL is pressed. | # What to do when CTRL-ALT-DEL is pressed. | ||
Riga 133: | Riga 133: | ||
È possibile disattivare questa caratteristica commentando la riga. | È possibile disattivare questa caratteristica commentando la riga. | ||
====Gestione delle Console==== | ==== Gestione delle Console ==== | ||
<pre> | <pre> | ||
# /sbin/getty invocations for the runlevels. | # /sbin/getty invocations for the runlevels. | ||
Riga 167: | Riga 167: | ||
Per maggiori informazioni sulla personalizzazione delle console virtuali, <code>''man getty''</code>. | Per maggiori informazioni sulla personalizzazione delle console virtuali, <code>''man getty''</code>. | ||
===Gestione dei runlevel (<code>update-rc.d</code>)=== | === Gestione dei runlevel (<code>update-rc.d</code>) === | ||
La gestione ''manuale'' dei runlevel (per gestione intendo, ovviamente, la modifica degli script assegnati ad ogni runlevel) è estremamente semplice, soprattutto con l'ausilio di <code>'''update-rc.d'''</code>. | La gestione ''manuale'' dei runlevel (per gestione intendo, ovviamente, la modifica degli script assegnati ad ogni runlevel) è estremamente semplice, soprattutto con l'ausilio di <code>'''update-rc.d'''</code>. | ||
Il suo utilizzo è estremamente semplice. | Il suo utilizzo è estremamente semplice. | ||
====Sintassi==== | ==== Sintassi ==== | ||
La sintassi del comando è suddivisibile in tre varianti: | La sintassi del comando è suddivisibile in tre varianti: | ||
Riga 197: | Riga 197: | ||
Vengono riportati alcuni esempi pratici (script <code>''xdm''</code>): | Vengono riportati alcuni esempi pratici (script <code>''xdm''</code>): | ||
====Aggiunta di un link==== | ==== Aggiunta di un link ==== | ||
Link per l'avvio: | Link per l'avvio: | ||
<pre> | <pre> | ||
Riga 212: | Riga 212: | ||
</pre> | </pre> | ||
====Rimozione di un link==== | ==== Rimozione di un link ==== | ||
<pre> | <pre> | ||
update-rc.d -f xdm remove | update-rc.d -f xdm remove | ||
</pre> | </pre> | ||
====Aggiunta di link secondo i Valori di Default==== | ==== Aggiunta di link secondo i Valori di Default ==== | ||
Valori di default: | Valori di default: | ||
<pre> | <pre> | ||
Riga 228: | Riga 228: | ||
</pre> | </pre> | ||
====Valori di Default==== | ==== Valori di Default ==== | ||
I valori di default utilizzati sono i seguenti: | I valori di default utilizzati sono i seguenti: | ||
* lo script viene lanciato con l'opzione <code>''start''</code> nei runlevel 2, 3, 4 e 5; | * lo script viene lanciato con l'opzione <code>''start''</code> nei runlevel 2, 3, 4 e 5; | ||
Riga 234: | Riga 234: | ||
* l'ordine è impostato a 20 | * l'ordine è impostato a 20 | ||
==Tool per la configurazione dei runlevel== | == Tool per la configurazione dei runlevel == | ||
===sysv-rc-conf=== | === sysv-rc-conf === | ||
sysv-rc-conf è una utility basata sulle librerie [[ncurses]] utile per semplificare la gestione dei [[runlevel]] ed avere una panoramica sullo stato di tutti i runlevel. | sysv-rc-conf è una utility basata sulle librerie [[ncurses]] utile per semplificare la gestione dei [[runlevel]] ed avere una panoramica sullo stato di tutti i runlevel. | ||
Riga 249: | Riga 249: | ||
[[Immagine:Sysvconfig.png|thumb|center|Screenshot di sysvconfig]] | [[Immagine:Sysvconfig.png|thumb|center|Screenshot di sysvconfig]] | ||
===rcconf=== | === rcconf === | ||
Rcconf è forse il più semplice programma per la gestione dei demoni che vengono lanciati all'avvio del sistema. | Rcconf è forse il più semplice programma per la gestione dei demoni che vengono lanciati all'avvio del sistema. | ||
Riga 256: | Riga 256: | ||
[[Immagine:rcconf.png|thumb|center|Screenshot di rcconf]] | [[Immagine:rcconf.png|thumb|center|Screenshot di rcconf]] | ||
===ksysv=== | === ksysv === | ||
Un programma di gestione dei runlevel basato sulle librerie QT ed integrato in KDE. | Un programma di gestione dei runlevel basato sulle librerie QT ed integrato in KDE. | ||
Riga 265: | Riga 265: | ||
[[Immagine:Ksysv.png|thumb|center|Screenshot di KsysV]] | [[Immagine:Ksysv.png|thumb|center|Screenshot di KsysV]] | ||
==<code>rc.local</code> e <code>rc.local_shutdown</code>== | == <code>rc.local</code> e <code>rc.local_shutdown</code> == | ||
Alcuni distribuzioni (Slackware per esempio) utilizzano i file <code>/etc/rc.local</code> e <code>/etc/rc.local_shutdown</code> per dare all'amministratore la possibilità di eseguire dei comandi specifici per un certo sistema all'avvio e allo spegnimento della macchina. | Alcuni distribuzioni (Slackware per esempio) utilizzano i file <code>/etc/rc.local</code> e <code>/etc/rc.local_shutdown</code> per dare all'amministratore la possibilità di eseguire dei comandi specifici per un certo sistema all'avvio e allo spegnimento della macchina. |
contributi