Colorare il boot di Debian: differenze tra le versioni

corretta gerarchia titoli
Nessun oggetto della modifica
(corretta gerarchia titoli)
Riga 1: Riga 1:
{{Versioni compatibili|Debian Etch 4.0<br/>Debian Lenny 5.0<br/>Debian Squeeze<br/>Debian Sid|}}
{{Versioni compatibili|Debian Etch 4.0<br/>Debian Lenny 5.0<br/>Debian Squeeze<br/>Debian Sid|}}
=Colorare il boot di Debian=
== Colorare il boot di Debian ==
Lo scopo di questa guida è quella di colorare i messaggi che scorrono all'avvio del sistema su una Debian-box.<br>
Lo scopo di questa guida è quella di colorare i messaggi che scorrono all'avvio del sistema su una Debian-box.<br>
Il file che si occupa della stampa a schermo dei log è <code>'''/lib/lsb/init-functions'''</code>, fornito dal pacchetto <code>'''lsb-base'''</code>, ed è quello che andremo a modificare.
Il file che si occupa della stampa a schermo dei log è <code>'''/lib/lsb/init-functions'''</code>, fornito dal pacchetto <code>'''lsb-base'''</code>, ed è quello che andremo a modificare.
Riga 6: Riga 6:
Le modifiche che effettueremo non colorano solo i messaggi al boot, ma anche eventuali messaggi stampati su terminale in caso di operazioni sui servizi del sistema (ad esempio il "restart" di un demone).
Le modifiche che effettueremo non colorano solo i messaggi al boot, ma anche eventuali messaggi stampati su terminale in caso di operazioni sui servizi del sistema (ad esempio il "restart" di un demone).


=Funzionamento di init-functions=
== Funzionamento di init-functions ==
Qualsiasi comportamento degli script di init del sistema, in ambiente shell, è specificato dal file <code>init-functions</code>. Esso contiene varie funzioni richiamate dagli init-script e si occupa di determinare lo ''status'' e l'identificazione del processo in corso per poi rilasciare dei log delle operazioni.
Qualsiasi comportamento degli script di init del sistema, in ambiente shell, è specificato dal file <code>init-functions</code>. Esso contiene varie funzioni richiamate dagli init-script e si occupa di determinare lo ''status'' e l'identificazione del processo in corso per poi rilasciare dei log delle operazioni.
<br>
<br>
Riga 66: Riga 66:
Se vogliamo colorare una porzione di testo è necessario inserire, prima del testo, la sequenza di escape riferita al colore voluto e, eventualmente, terminare il testo con il colore ''Normal'' affinché il testo successivo non resti colorato.
Se vogliamo colorare una porzione di testo è necessario inserire, prima del testo, la sequenza di escape riferita al colore voluto e, eventualmente, terminare il testo con il colore ''Normal'' affinché il testo successivo non resti colorato.


=Modifica di "init-functions"=
== Modifica di "init-functions" ==


==log_use_fancy_output==
=== log_use_fancy_output ===
Per prima cosa andiamo a definire le sequenze di escape dei colori come variabili, per evitare di dover riscrivere la sequenza ogni volta nei messaggi. In più diamo la possibilità a Bash di evitare di interpretare le sequenze nel caso il nostro sistema non utilizzi la modalità '''fancy output''', il testo colorato, nella funzione <code>log_use_fancy_output</code>, al fine di evitare caratteri incomprensibili nell'output.
Per prima cosa andiamo a definire le sequenze di escape dei colori come variabili, per evitare di dover riscrivere la sequenza ogni volta nei messaggi. In più diamo la possibilità a Bash di evitare di interpretare le sequenze nel caso il nostro sistema non utilizzi la modalità '''fancy output''', il testo colorato, nella funzione <code>log_use_fancy_output</code>, al fine di evitare caratteri incomprensibili nell'output.


Riga 112: Riga 112:
<pre>${RED}</pre>
<pre>${RED}</pre>


==log_begin_msg==
=== log_begin_msg ===
Questa funzione si occupa della parte iniziale dei messaggi relativi alle operazioni sui servizi, come il restart. Il colore utilizzato sarà il "BLUE".
Questa funzione si occupa della parte iniziale dei messaggi relativi alle operazioni sui servizi, come il restart. Il colore utilizzato sarà il "BLUE".


Riga 125: Riga 125:
</pre>
</pre>


==log_daemon_msg==
=== log_daemon_msg ===
Si occupa dei messaggi sulle operazioni di avvio di servizi. Utilizzeremo il colore "BLUE" per la parte iniziale del messaggio mentre utilizzeremo il colore "PINK" per evidenziare il nome del demone su cui si opera.
Si occupa dei messaggi sulle operazioni di avvio di servizi. Utilizzeremo il colore "BLUE" per la parte iniziale del messaggio mentre utilizzeremo il colore "PINK" per evidenziare il nome del demone su cui si opera.


Riga 146: Riga 146:
</pre>
</pre>


==log_progress_msg==
=== log_progress_msg ===
Stampa il nome del servizio su cui sta operando. Utilizzeremo il "PINK":
Stampa il nome del servizio su cui sta operando. Utilizzeremo il "PINK":


Riga 159: Riga 159:
</pre>
</pre>


==log_end_msg==
=== log_end_msg ===
Lasceremo i colori "YELLOW" e "RED" rispettivamente per i messaggi di ''warning'' e ''fail''.
Lasceremo i colori "YELLOW" e "RED" rispettivamente per i messaggi di ''warning'' e ''fail''.
Aggiungeremo poi il colore "GREEN" per i messaggi di corretta esecuzione del processo. In più aggiungeremo il testo "''done''" prima del "." come conferma di esecuzione.<br>
Aggiungeremo poi il colore "GREEN" per i messaggi di corretta esecuzione del processo. In più aggiungeremo il testo "''done''" prima del "." come conferma di esecuzione.<br>
Riga 190: Riga 190:
</pre>
</pre>


==log_action_msg==
=== log_action_msg ===
Questa funzione e le successive stampano le varie azioni compiute sui demoni. Modifichiamo questa sezione come segue:
Questa funzione e le successive stampano le varie azioni compiute sui demoni. Modifichiamo questa sezione come segue:


Riga 230: Riga 230:
Una modifica di questo tipo colora tutti i messaggi stampati durante l'avvio del sistema. Alcuni init-scripts, però, hanno una propria formattazione del testo di output e questo scavalcherà le direttive di <code>init-functions</code>.
Una modifica di questo tipo colora tutti i messaggi stampati durante l'avvio del sistema. Alcuni init-scripts, però, hanno una propria formattazione del testo di output e questo scavalcherà le direttive di <code>init-functions</code>.


=Una modifica meno invasiva=
== Una modifica meno invasiva ==
Un altro tipo di modifica, meno invasiva, colora solo delle parti specifiche dei messaggi.
Un altro tipo di modifica, meno invasiva, colora solo delle parti specifiche dei messaggi.
In questo caso lasceremo la parte iniziale dei messaggi con il colore predefinito di Bash, mentre coloriamo utilizzando i colori "BLUE" e "GREEN" per colorare rispettivamente il nome del servizio in causa e il risultato dell'operazione.
In questo caso lasceremo la parte iniziale dei messaggi con il colore predefinito di Bash, mentre coloriamo utilizzando i colori "BLUE" e "GREEN" per colorare rispettivamente il nome del servizio in causa e il risultato dell'operazione.
1 508

contributi