Personnaliser votre message de connexion SSH
Lorsque vous vous connectez au Raspberry en SSH ou bien en ouvrant un terminal sous X vous avez la possibilité d’afficher un message particulier dont le contenu se situe dans le fichier /etc/motd.
Nous allons modifier ce message pour obtenir un contenu personnalisé, plus graphique, et avec des informations qui vous seront utiles.
Pour commencer, il faut créer un script dans l'arborescence /home/pi (par exemple) avec la commande vi /home/pi/update_motd.sh
) et y mettre le contenu suivant :
#! /bin/sh
upSeconds=`/usr/bin/cut -d. -f1 /proc/uptime`
secs=$(($upSeconds%60))
mins=$(($upSeconds/60%60))
hours=$(($upSeconds/3600%24))
days=$(($upSeconds/86400))
UPTIME=`printf "%d days, %02dh %02dm %02ds " "$days" "$hours" "$mins" "$secs"`
echo "\033[0;32m
.~~. .~~. \033[0;37m`date +"%A, %e %B %Y, %R"`\033[0;32m
'. \ ' ' / .' \033[0;37m`uname -srmo`\033[0;31m
.~ .~~~..~. \033[0;37m\033[0;31m
: .~.'~'.~. : \033[0;37mUptime.............: $UPTIME\033[0;31m
~ ( ) ( ) ~ \033[0;37mMemory.............: $((`cat /proc/meminfo | grep MemFree | awk {'print $2'}`/1024))MB (Free) / $((`cat /proc/meminfo | grep MemTotal | awk {'print $2'}`/1024))MB (Total)\033[0;31m
( : '~'.~.'~' : ) \033[0;37mRunning Processes..: `ps ax | wc -l | tr -d " "`\033[0;31m
~ .~ ( ) ~. ~ \033[0;37m\033[0;31m
( : '~' : ) \033[0;37mIP Addresses.......: `/sbin/ifconfig | /bin/grep "Bcast:" | /usr/bin/cut -d ":" -f 2 | /usr/bin/cut -d " " -f 1` / `wget -q -O - http://icanhazip.com/ | tail`\033[0;31m
'~ .~~~. ~' \033[0;37mTemperature........: `vcgencmd measure_temp | sed "s/temp=//"`\033[0;31m
'~' \033[0;37m" > /etc/motd
Le script va écrire dans le fichier /etc/motd.
Il faut ensuite mettre en place une actualisation du fichier /etc/motd. Pour ma part, j'ai choisi de lancer le script à chaque connexion sur mon Raspberry Pi, les informations seront donc mises à jour à chaque ouverture de terminal.
Pour cela, éditez le fichier profile (vi /etc/profile
) et ajoutez la ligne suivante à la fin :
sh /home/pi/update_motd.sh
Pour avoir le rendu suivant :
Il vous faudra mettre le contenu qui suit dans le script /home/pi/update_motd.sh
:
#! /bin/sh
VERT="\\033[1;32m"
NORMAL="\\033[0;39m"
ROUGE="\\033[0;31m"
ROSE="\\033[1;35m"
BLEU="\\033[1;34m"
BLANC="\\033[0;02m"
BLANCLAIR="\\033[1;08m"
JAUNE="\\033[1;33m"
CYAN="\\033[1;36m"
upSeconds=`/usr/bin/cut -d. -f1 /proc/uptime`
secs=$(($upSeconds%60))
mins=$(($upSeconds/60%60))
hours=$(($upSeconds/3600%24))
days=$(($upSeconds/86400))
UPTIME=`printf "%d days, %02dh %02dm %02ds " "$days" "$hours" "$mins" "$secs"`
tmp_size=`df -h /tmp | awk '{ a = $2 } END { print a }'`
tmp_used=`df -h /tmp | awk '{ b = $3 } END { print b }'`
tmp=`df /tmp | awk '{ c = $5 } END { print c }'`
root_size=`df -h / | awk '{ a = $2 } END { print a }'`
root_used=`df -h / | awk '{ b = $3 } END { print b }'`
root=`df / | awk '{ c = $5 } END { print c }'`
echo "$VERT
.~~. .~~.
'. \ ' ' / .'
$ROUGE.~ .~~~..~.
: .~.'~'.~. :
~ ( ) ( ) ~
( : '~'.~.'~' : )
~ .~ ( ) ~. ~
( : '~' : )
'~ .~~~. ~'
'~'
$ROSE------------------------------------------------------------------$BLANC
$VERT Informations :$BLANC
- Hostname = $JAUNE `hostname -s` $BLANC
- @ IP = $JAUNE `/sbin/ifconfig | /bin/grep "Bcast:" | /usr/bin/cut -d ":" -f 2 | /usr/bin/cut -d " " -f 1` $BLANC/$JAUNE `wget -q -O - http://icanhazip.com/ | tail`$BLANC
- Date = `date`
$ROSE------------------------------------------------------------------$BLANC
$VERT Système : $BLANC
- Version OS = `lsb_release -ds`
- Kernel = `uname -or`
- Uptime = $UPTIME
- Température = `vcgencmd measure_temp | sed "s/temp=//"`
$ROSE------------------------------------------------------------------$BLANC
$VERT Charge : $BLANC
- Load Averages = `cat /proc/loadavg`
- Processus = `ps ax | wc -l | tr -d " "`
- Mémoire = $((`cat /proc/meminfo | grep MemFree | awk {'print $2'}`/1024))MB (Free) / $((`cat /proc/meminfo | grep MemTotal | awk {'print $2'}`/1024))MB (Total)
$ROSE------------------------------------------------------------------$BLANC
$VERT Disques : $BLANC
- Utilisation de / = $root ($root_used/$root_size)
- Utilisation de /tmp = $tmp ($tmp_used/$tmp_size)
$BLANC" > /etc/motd
Voilà, libre à vous maintenant de personnaliser votre message de connexion SSH.