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

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
mNessun oggetto della modifica
m (Una cavolata :))
Riga 1: Riga 1:
== Presentazione ==
Siete amanti della shell pura? Amate far partire il sistema senza avvio grafico? Forse potrebbero piacervi '''welcome2l''' o '''linuxlogo''' .


Questo script bash confronta due file di configurazione del kernel e stampa
Welcome2l è un semplice pacchetto che crea un logo grafico alle vostre consoles in caratteri ANSI. Basta installarlo:
le voci che contengono una determinata stringa che siano settate (o non settate) nel primo e settate (o non settate) nel secondo.


Pu� essere utile per individuare quali voci mancano in un kernel ricompilato ripetto ad un kernel binario debian, in una particolare sezione del kernel.
<pre>
# apt-get install welcome2l
</pre>
 
modificare il vostro '''/etc/inittab''' aggiungendo ''-f /etc/issue.welcome2l'' 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>


== Sintassi ==
Vi sono anche altre configurazioni possibili per welcome2l che potete trovare nel file della documentazione:  
Lo script va lanciato nel seguente modo (supponendo di averlo chiamato <tt>ker-conf</tt>):


  ker-conf config-1 config-2 stringa [s|n] [s|n]
'''/usr/share/doc/welcome2l/INSTALL'''


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,
Che dire di '''linuxlogo'''?
acpi, '*', ecc...


Gli ultimi due parametri (opzionali) possono essere solo 's' o 'n' (settato o non
Anche qui si tratta di un semplice pacchetto che crea un logo grafico in caratteri ANSI.
settato) e si riferiscono rispettivamente allo stato di config-1 e config-2.
Beh! Eì la stessa operazione. Naturalmente non usateli contemporaneamente nel vostro '''/etc/inittab''' per cui se avete già modificato il file per welcome2l, sostituite '''-f /etc/issue.welcome2l''' come suggerito più avanti. In realtà linuxlogo di default verrà richiamato al vostro boot nella sequenza finale del vostro runlevel. Ma potrebbe piacervi di più come sostituto di welcome2l sebbene anche questo pacchetto ha diverse configurazioni che potete scoprire nella sua documentazione. Qui prendiamo come esempio, il caso precedente considerato per welcome2l:  
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
<pre>
sono stampate con lo stato (<tt>=y</tt> oppure <tt>=m</tt>) del secondo config.
# apt-get install linuxlogo
</pre>


Per una breve decrizione del funzionamento dello script, basta lanciarlo senza alcun parametro.
E semplicemente modificate ancora '''/etc/inittab''' aggiungendo '''-f /etc/issue.linuxlogo''' al posto di -f /etc/issue.welcome2l. Potete anche scegliere tra quattro diversi loghi ed eventualmente scegliere di avviarli in modalita monocromatica al posto dei banner. Scegliere è alla vostra portata. Provate subito un bel:


== Script ==
<pre>$linuxlogo -h</pre>


<pre>
Scoprite le vostre opzioni preferite ed inseritele in '''/etc/linux_logo.conf''' nella prima riga.  
#!/bin/bash
#
#  ckc - Confronta Kernel Config
#  Versione: 0.0.3
#
#  Copyright (C) 2005 - Davide Natalini <tindal@katamail.com>
#                      Antonio Ingargiola <debian@fastwebnet.it>
#
#  Released under the GNU GENERAL PUBLIC LICENSE.
#


usage() {
Per vedere subito quali loghi sono disponibili lanciate:  
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 () {
<pre>$linuxlogo -L list</pre>
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
Se accedete alla vostra debian box remotamente e volete visualizzare il logo al login di ssh, dovete fare una semplicissima modifica.


STATUS_NEW=${4-n}; STATUS_REF=${5-s}
Aprite col vostro editor preferito il file .bash_profile, scorrete fino all'ultima riga e aggiungete il seguente comando:
for S in $STATUS_NEW $STATUS_REF; do [ "$S" = "s" ] || [ "$S" = "n" ] || usage; done


TMP_FILE_NEW="/tmp/${0##*/}-new.tmp"
<pre>linuxlogo -L #   (dove # è il numero del logo)</pre>
TMP_FILE_REF="/tmp/${0##*/}-ref.tmp"
ON_EXIT="rm -f $TMP_FILE_NEW $TMP_FILE_REF"


trap "$ON_EXIT" 0 15
Salvate e il gioco è fatto.


filter $REF_CONFIG $STATUS_REF > $TMP_FILE_REF
Se una volta loggatovi compare il messaggio '''linuxlogo: command not found''', sostituite linuxlogo con linux_logo.
filter $NEW_CONFIG $STATUS_NEW > $TMP_FILE_NEW


for LINE_NEW in $( cat $TMP_FILE_NEW )
Buon divertimento!!!
do
egrep "${LINE_NEW/%=[ymn]/}(=[ymn])?$" $TMP_FILE_REF
done


exit 0
</pre>


[[Categoria:Kernel]]
Autore: AltroMondo
[[Categoria:Script]]
[[Categoria:Shell]]
[[Categoria:Tips&Tricks]]

Versione delle 14:42, 16 apr 2007

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

Welcome2l è un semplice pacchetto che crea un logo grafico alle vostre consoles in caratteri ANSI. Basta installarlo:

# apt-get install welcome2l

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

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! Eì la stessa operazione. Naturalmente non usateli contemporaneamente nel vostro /etc/inittab per cui se avete già modificato il file per welcome2l, sostituite -f /etc/issue.welcome2l come suggerito più avanti. In realtà linuxlogo di default verrà richiamato al vostro boot nella sequenza finale del vostro runlevel. Ma potrebbe piacervi di più come sostituto di welcome2l sebbene anche questo pacchetto ha diverse configurazioni che potete scoprire nella sua documentazione. Qui prendiamo come esempio, il caso precedente considerato per welcome2l:

# apt-get install linuxlogo

E semplicemente modificate ancora /etc/inittab aggiungendo -f /etc/issue.linuxlogo al posto di -f /etc/issue.welcome2l. Potete anche scegliere tra quattro diversi loghi ed eventualmente scegliere di avviarli in modalita 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

Se accedete alla vostra debian box remotamente 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 loggatovi compare il messaggio linuxlogo: command not found, sostituite linuxlogo con linux_logo.

Buon divertimento!!!


Autore: AltroMondo