jueves, 29 de octubre de 2015

Script mensaje de inicio raspberry pi ( motd )

Para crear un mensaje de inicio en tú raspi hay que modificar el directorio /etc/motd

Aquí de podría poner un mensaje standar o algo mucho mejor como crear un script que se añada en el cron con variables. Así cada vez que inicias sesión depués de que pase el cron el mensaje de bienvenida cambia.

Aquí voy a poner un mensaje que cambia ciertos parámetros como la temperatura de la raspberry , el espacio usado y el espacio libre, procesos corriendo, la IP. Por tanto cuando pase el cron cada 5 minutos estos parametros cambiarán.

Yo he creado en el home de pi, es decir donde apareces nada más logearte una carpeta de scripts.

pi@raspberrypi ~ $ sudo mkdir scripts
pi@raspberrypi ~ $ sudo vi motd_update.sh

#!/bin/sh
IP=`ip addr show scope global | grep inet | cut -d' ' -f6 | cut -d/ -f1` # IP privada
UP=`uptime | awk -F"up " '{print $2}' | awk -F"," '{print $1}'` # Tiempo online
USED=`df -h | grep 'dev/root' | awk '{print $3}'` # Espacio usado en disco
AVAIL=`df -h | grep 'dev/root' | awk '{print $4}'` # Espacio libre en disco
MIP=`/usr/bin/curl icanhazip.com 2>/dev/null` # IP Publica
TEMP=`cat /sys/class/thermal/thermal_zone0/temp`
TEMP2=`expr $TEMP / 1000` # Temperatura en grados
DATE=`date +"%A, %e %B %Y, %r"` # Fecha

echo "\033[1;32m
    .~~.   .~~.
   '. \ ' ' / .'   \033[1;31m
    .~ .~~~..~.    \033[1;37m                   _                          _ \033[1;31m
   : .~.'~'.~. :   \033[1;37m   ___ ___ ___ ___| |_ ___ ___ ___ _ _    ___|_|\033[1;31m
  ~ (   ) (   ) ~  \033[1;37m  |  _| .'|_ -| . | . | -_|  _|  _| | |  | . | |\033[1;31m
 ( : '~'.~.'~' : ) \033[1;37m  |_| |__,|___|  _|___|___|_| |_| |_  |  |  _|_|\033[1;31m
  ~ .~ (   ) ~. ~  \033[1;37m              |_|                 |___|  |_|    \033[1;31m
   (  : '~' :  )
    '~ .~~~. ~'
        '~'
    \033[1;37m-------------------------------------------------
    \033[1;37m$DATE
    \033[1;31m`hostname -f` IP: \033[1;30m$IP / $MIP
    \033[1;34mUsed | Free on /dev/sda1:\033[1;30m $USED | $AVAIL
    \033[1;34mRunning Processes:\033[1;30m `ps ax | wc -l | tr -d " "`
    \033[1;34mUpTime:\033[1;30m $UP
    \033[1;34mSystem Temperature:\033[1;30m $TEMP2ºC
    \033[1;37m-------------------------------------------------
" > $1


Y lo único que hay que hacer es crear un cron para que se ejecute cada 5 minutos, por ejemplo.

pi@raspberrypi ~/scripts $ sudo crontab -e

y añadir esta linea.

* * * * * /home/pi/scripts/motd_update.sh /etc/motd #Actualiza el fichero motd

Finalmente reinicia o haz un cat de /etc/motd y tendrás el resultado.


Inicio de raspberry pi motd
Inicio de raspberry pi