Due simpatici login: welcome2l e linuxlogo: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
mNessun oggetto della modifica
 
(15 versioni intermedie di 7 utenti non mostrate)
Riga 1: Riga 1:
== Presentazione ==
{{Versioni compatibili|Squeeze|Wheezy|Jessie}}


Questo script bash confronta due file di configurazione del kernel e stampa
__TOC__
le voci che contengono una determinata stringa che siano settate (o non settate) nel primo e settate (o non settate) nel secondo.
== Introduzione ==
Siete amanti della shell pura? Amate far partire il sistema senza avvio grafico? Forse potrebbero piacervi '''welcome2l''' o '''linuxlogo''' .


Pu� essere utile per individuare quali voci mancano in un kernel ricompilato ripetto ad un kernel binario debian, in una particolare sezione del kernel.
== Welcome2l ==
Welcome2l è un semplice pacchetto che crea un logo grafico alle vostre console in caratteri ANSI. Basta installarne il pacchetto con [[privilegi di amministrazione]]:


== Sintassi ==
<pre>
Lo script va lanciato nel seguente modo (supponendo di averlo chiamato <tt>ker-conf</tt>):
# apt-get install welcome2l
</pre>
 
=== Con SysV ===
Modificare il vostro <code>/etc/inittab</code> aggiungendo <code>-f /etc/issue.welcome2l</code> per ogni riga che richiama il comando getty in questa sezione:
 
<pre>1:2345:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty1
2:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty2
3:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty3
4:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty4
5:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty5
6:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty6</pre>
 
=== Con systemd ===
A partire da Debian 8 ([[Jessie]]), il nuovo sistema di init di default è [[systemd]]. Per modificare i parametri con cui è eseguito getty, bisogna cambiarne il file di configurazione.
 
Prima copiamo il file che vogliamo cambiare da <code>/lib/systemd/system/</code> nella directory <code>/etc/systemd/system/</code>, in modo che abbia la precedenza sul file di sistema, e poi apportiamo le modifiche desiderate.
 
Il file a cui siamo interessati è <code>getty@.service</code>, quindi lo copiamo con:
<pre># cp /lib/systemd/system/getty@.service /etc/systemd/system/</pre>
 
E poi lo modifichiamo con un editor qualsiasi, per esempio [[nano]]:
<pre># nano /etc/systemd/system/getty@.service</pre>
 
E modifichiamo la riga:
<pre>ExecStart-=/sbin/agetty --noclear %I $TERM</pre>
 
In:
ExecStart-=/sbin/agetty '''-f /etc/issue.welcome2l''' --noclear %I $TERM
 
Le modifiche avranno effetto dal successivo avvio, oppure dopo un login e un logout su un terminale virtuale (<code>tty1</code>, <code>tty2</code>, ...), dando prima:
<pre># systemctl daemon-reload</pre>
 
=== Risultato ===
Il vostro login apparirà così :


  ker-conf config-1 config-2 stringa [s|n] [s|n]
[[immagine:Immagine3.JPG|380px| center]]


I primi due parametri sono i due file di configurazione del kernel da confrontare. Il terzo parametro � la stringa che deve essere contenuta nelle voci di configurazione di entrambi i kernel (solo questo sotto-insieme viene confrontato).    La stringa di ricerca � ''case-insensitive'', valori di esempio sono: scsi, usb,
Vi sono anche altre configurazioni possibili per ''Welcome2l'' che potete trovare nel file della documentazione:  
acpi, '*', ecc...


Gli ultimi due parametri (opzionali) possono essere solo 's' o 'n' (settato o non
<code>'''/usr/share/doc/welcome2l/INSTALL'''</code>
settato) e si riferiscono rispettivamente allo stato di config-1 e config-2.
Se gli ultimi due parametri vengono omessi viene usato il default: n s.


Quando l'ultimo parametro � s (e' il default se non specificato) le voci
== Linuxlogo ==
sono stampate con lo stato (<tt>=y</tt> oppure <tt>=m</tt>) del secondo config.
Che dire di '''linuxlogo'''?


Per una breve decrizione del funzionamento dello script, basta lanciarlo senza alcun parametro.
Anche qui si tratta di un semplice pacchetto che crea un logo grafico in caratteri ANSI.
Beh! È la stessa operazione. Naturalmente non usateli contemporaneamente.


== Script ==
In realtà ''Linuxlogo'' di default verrà richiamato al boot, ma potrebbe piacervi di più come sostituto di welcome2l sebbene anche questo pacchetto ha diverse configurazioni che potete scoprire nella sua documentazione.


Per installarlo:
<pre>
<pre>
#!/bin/bash
# apt-get install linuxlogo
#
</pre>
#  ckc - Confronta Kernel Config
 
#  Versione: 0.0.3
E poi basta aggiungere il file di configurazione con <code>'''-f /etc/issue.linuxlogo'''</code> al posto di <code>-f /etc/issue.welcome2l</code>, come visto in precedenza per [[SysV]] o [[systemd]].
#
 
#  Copyright (C) 2005 - Davide Natalini <tindal@katamail.com>  
Un esempio :
#                      Antonio Ingargiola <debian@fastwebnet.it>
#
#  Released under the GNU GENERAL PUBLIC LICENSE.
#


usage() {
[[immagine:Immagine1.JPG|380px| center]]
echo -e "\n  *** Errore: Parametri non corretti.\n"
echo -e "  USO: \n"
echo -e "  ${0##*/} config-1 config-2 stringa [s|n] [s|n]\n"
echo -e "  Lo script ${0##*/} confronta due file di configurazione del kernel e stampa"
echo -e "  le voci che contengono 'stringa' che siano settate (o non settate) nel primo"
echo -e "  e settate (o non settate) nel secondo.\n"
echo -e "  Gli ultimi due parametri possono essere solo 's' o 'n' (settato o non"
echo -e "  settato) e si riferiscono rispettivamente allo stato di config-1 e config-2."
echo -e "  Se gli ultimi due parametri vengono omessi viene usato il default: n s. \n"
echo -e "  Quando l'ultimo parametro e' s (e' il default se non specificato) le voci"
echo -e "  sono stampate con lo stato (built-in o modulo) del secondo config.\n"
exit 1
}


filter () {
Potete anche scegliere tra quattro diversi loghi ed eventualmente scegliere di avviarli in modalità monocromatica al posto dei banner. Scegliere è alla vostra portata. Provate subito un bel:
FILE=$1; STATUS=$2
BOOL=''; EXP='^ *$'; [ "$STATUS" = "s" ] && BOOL="-v" || EXP='=|is not set'
SED_EXP='s/\(# \)\?\([0-9a-zA-Z_]\+\)\(=.\)\?.*/\2\3/'
egrep $BOOL '^#' "$FILE" | egrep $BOOL "$EXP" | egrep -i "$PAR" | sed "$SED_EXP"
}
[ $# -lt 3 ] || [ $# -gt 5 ] && usage


NEW_CONFIG=$1; REF_CONFIG=$2;  PAR=$3
<pre>$ linuxlogo -h</pre>
   
Scoprite le vostre opzioni preferite ed inseritele in <code>/etc/linux_logo.conf</code> nella prima riga.


STATUS_NEW=${4-n}; STATUS_REF=${5-s}
Per vedere subito quali loghi sono disponibili lanciate:
for S in $STATUS_NEW $STATUS_REF; do [ "$S" = "s" ] || [ "$S" = "n" ] || usage; done


TMP_FILE_NEW="/tmp/${0##*/}-new.tmp"
<pre>$ linuxlogo -L list</pre>
TMP_FILE_REF="/tmp/${0##*/}-ref.tmp"
ON_EXIT="rm -f $TMP_FILE_NEW $TMP_FILE_REF"


trap "$ON_EXIT" 0 15
Alcuni dei logo debian disponibili :


filter $REF_CONFIG $STATUS_REF > $TMP_FILE_REF
[[immagine:Immagine2.JPG|380px| center]]
filter $NEW_CONFIG $STATUS_NEW > $TMP_FILE_NEW


for LINE_NEW in $( cat $TMP_FILE_NEW )
Se accedete alla vostra Debian box da remoto e volete visualizzare il logo al login di ssh, dovete fare una semplicissima modifica.
do
egrep "${LINE_NEW/%=[ymn]/}(=[ymn])?$" $TMP_FILE_REF
done


exit 0
Aprite col vostro editor preferito il file <code>~/.bash_profile</code>, scorrete fino all'ultima riga e aggiungete il seguente comando:
</pre>
 
<pre>linuxlogo -L #    (dove # è il numero del logo)</pre>
 
Salvate e il gioco è fatto.
 
Se una volta loggati compare il messaggio '''linuxlogo: command not found''', sostituite "linuxlogo" con "linux_logo".
 
Buon divertimento!!!
 
 
{{Autori
|Autore = [[Utente:AltroMondo|AltroMondo]]
|Verificata_da =
: [[Utente:Mm-barabba|Mm-barabba]]
: [[Utente:HAL 9000|HAL 9000]] 11:43, 9 giu 2015 (CEST)
|Estesa_da =
: [[Utente:HAL 9000|HAL 9000]] 11:43, 9 giu 2015 (CEST)
|Numero_revisori = 2
}}


[[Categoria:Kernel]]
[[Categoria:Shell]]
[[Categoria:Script]]

Versione attuale delle 09:09, 16 nov 2015

Edit-clear-history.png Attenzione. Questa guida è da considerarsi abbandonata, per via del tempo trascorso dall'ultima verifica.

Potrà essere resa obsoleta, previa segnalazione sul forum, se nessuno si propone per l'adozione.


Debian-swirl.png Versioni Compatibili

Debian 6 "squeeze"
Debian 7 "wheezy"
Debian 8 "jessie"

Introduzione

Siete amanti della shell pura? Amate far partire il sistema senza avvio grafico? Forse potrebbero piacervi welcome2l o linuxlogo .

Welcome2l

Welcome2l è un semplice pacchetto che crea un logo grafico alle vostre console in caratteri ANSI. Basta installarne il pacchetto con privilegi di amministrazione:

# apt-get install welcome2l

Con SysV

Modificare il vostro /etc/inittab aggiungendo -f /etc/issue.welcome2l per ogni riga che richiama il comando getty in questa sezione:

1:2345:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty1
2:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty2
3:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty3
4:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty4
5:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty5
6:23:respawn:/sbin/getty -f /etc/issue.welcome2l 38400 tty6

Con systemd

A partire da Debian 8 (Jessie), il nuovo sistema di init di default è systemd. Per modificare i parametri con cui è eseguito getty, bisogna cambiarne il file di configurazione.

Prima copiamo il file che vogliamo cambiare da /lib/systemd/system/ nella directory /etc/systemd/system/, in modo che abbia la precedenza sul file di sistema, e poi apportiamo le modifiche desiderate.

Il file a cui siamo interessati è getty@.service, quindi lo copiamo con:

# cp /lib/systemd/system/getty@.service /etc/systemd/system/

E poi lo modifichiamo con un editor qualsiasi, per esempio nano:

# nano /etc/systemd/system/getty@.service

E modifichiamo la riga:

ExecStart-=/sbin/agetty --noclear %I $TERM

In:

ExecStart-=/sbin/agetty -f /etc/issue.welcome2l --noclear %I $TERM

Le modifiche avranno effetto dal successivo avvio, oppure dopo un login e un logout su un terminale virtuale (tty1, tty2, ...), dando prima:

# systemctl daemon-reload

Risultato

Il vostro login apparirà così :

Immagine3.JPG

Vi sono anche altre configurazioni possibili per Welcome2l che potete trovare nel file della documentazione:

/usr/share/doc/welcome2l/INSTALL

Che dire di linuxlogo?

Anche qui si tratta di un semplice pacchetto che crea un logo grafico in caratteri ANSI. Beh! È la stessa operazione. Naturalmente non usateli contemporaneamente.

In realtà Linuxlogo di default verrà richiamato al boot, ma potrebbe piacervi di più come sostituto di welcome2l sebbene anche questo pacchetto ha diverse configurazioni che potete scoprire nella sua documentazione.

Per installarlo:

# apt-get install linuxlogo

E poi basta aggiungere il file di configurazione con -f /etc/issue.linuxlogo al posto di -f /etc/issue.welcome2l, come visto in precedenza per SysV o systemd.

Un esempio :

Immagine1.JPG

Potete anche scegliere tra quattro diversi loghi ed eventualmente scegliere di avviarli in modalità monocromatica al posto dei banner. Scegliere è alla vostra portata. Provate subito un bel:

$ linuxlogo -h

Scoprite le vostre opzioni preferite ed inseritele in /etc/linux_logo.conf nella prima riga.

Per vedere subito quali loghi sono disponibili lanciate:

$ linuxlogo -L list

Alcuni dei logo debian disponibili :

Immagine2.JPG

Se accedete alla vostra Debian box da remoto e volete visualizzare il logo al login di ssh, dovete fare una semplicissima modifica.

Aprite col vostro editor preferito il file ~/.bash_profile, scorrete fino all'ultima riga e aggiungete il seguente comando:

linuxlogo -L #    (dove # è il numero del logo)

Salvate e il gioco è fatto.

Se una volta loggati compare il messaggio linuxlogo: command not found, sostituite "linuxlogo" con "linux_logo".

Buon divertimento!!!




Guida scritta da: AltroMondo Swirl-auth60.png Debianized 60%
Estesa da:
HAL 9000 11:43, 9 giu 2015 (CEST)
Verificata da:
Mm-barabba
HAL 9000 11:43, 9 giu 2015 (CEST)

Verificare ed estendere la guida | Cos'è una guida Debianized