Message Of The Day (MOTD) Personalizado para Raspberry

Imagen 1. MOTD personalizado

El famoso MOTD es un mensaje personalizado, o no, que se muestra al iniciar sesión en la terminal de Linux, si iniciamos sesión por SSH podemos ver dos mensajes más: Una advertencia de SSH y la información de la última conexión realizada. Estos mensajes son en parte algo informativos, pero con los siguientes pasos conseguiremos tener algo mucho más útil y verdaderamente informativo.

Si queremos mostrar información en texto plano, es decir, que no haya interpretación de comandos, podemos hacerlo fácilmente editando el fichero /etc/motd, pero si en cambio queremos algo más completo, como en la portada de esta entrada debemos realizar los siguientes pasos:

  • Ir a la carpeta /etc/update-motd.d
  • Si encontramos un fichero aquí dentro (10-uname), probablemente contenga solo dos lineas, el shebang y una linea con el comando: uname, lo borraremos.
  • Crearemos un nuevo fichero, en mi caso lo llamaré: 01-customized, y dentro de el estará el contenido que mostraremos al inicio de sesión.
Imagen 2. Creando 01-customized
  • El contenido de 01-customized debe ser igual que un script en bash. A continuación dejo el código del script, pero siempre podéis encontrarlo completo y actualizado en mi GitHub, aquí.
#!/bin/bash
################  MOTD FOR RASPBERRY  ####################
###############  github.com/deividgdt  ###################
##########################0.4#############################

RED='\e[31m'
GREEN='\e[32m'
NOCOL='\e[0m'
UP=`uptime --pretty`
CPUSAGE=`cat /proc/loadavg | awk '{print "1 minute: "$1"/ 5 minutes: "$2"/ 15 minutes: "$3}'`
TOTALMEM=`awk 'NR==1 {printf "%0.0f MB",$2/1024}' /proc/meminfo`
USEDMEM=`awk 'NR==2 {printf "%0.0f MB",$2/1024}' /proc/meminfo`
DISKUSAGE=`df --human-readable | grep --extended-regexp "/$" | awk '{print $4"/"$2" Used: "$5}'`
NETDEV=`ip route get 8.8.8.8 | head --lines=1 | awk '{print $5}'`
IPADDR=`ip -oneline -family inet address show | grep ${NETDEV} | awk '{print $4}'| cut --fields=1 --delimiter="/"`
TEMP=`/opt/vc/bin/vcgencmd measure_temp | cut --fields=2 --delimiter="="`


echo -e "         ${GREEN}.-::--.       .-:::-."
echo -e "      /+o//:::/+o+. -+o+/::://oo:"
echo -e "      o+  .-.    -s/o     -.  .y/"
echo -e "      :y-   .:::. oy- -/:-    :s."
echo -e "       :s:     .osyyys:     ./s-${NOCOL}"
echo -e "        ${RED}./s+:-:+yyysyys/:-/+s"
echo -e "        .++/--os:    ./s::/os::"
echo -e "       .s:  :sys-    .:ys/  -y+"
echo -e "       :s:+yo/--:oyyy/-.-:o+-oy"
echo -e "     .+o+yy-      sy:      /y++s/"
echo -e "     s/  y+       sy:       y  .y/"
echo -e "    .y. .ys.     +yyy:     :y-  so"
echo -e "     ++.+yyyo/+o+:..-:oo+osys+./y-"
echo -e "      +yo--/syy/       oys:   sy."
echo -e "      .y:    /y/       oo     o:"
echo -e "       :s-    oyo:...:oy.    /o"
echo -e "        -oo/::yyysooooyy+::+o:"
echo -e "           :+yy+      .syo/."
echo -e "              ./o+//+o+-"
echo -e "                  ...\n${NOCOL}"
echo -e "     System-------> `uname -snrvm`"
echo -e "     Up Time------> ${UP}"
echo -e "     CPU Usage----> ${CPUSAGE}"
echo -e "     RAM Usage----> Free RAM: ${USEDMEM} of ${TOTALMEM}"
echo -e "     SD Usage-----> ${DISKUSAGE}"
echo -e "     IP Address---> ${IPADDR}"
echo -e "     Temperature--> ${TEMP}"
  • Habiendo creado el fichero, a continuación damos permisos de ejecución, ejecutando: chmod a+x 01-customized
  • Con los pasos realizados anteriormente ya deberíamos tener funcionando nuestro nuevo mensaje de bienvenida, los siguientes son opcionales, en mi caso lo que hice fue quitar la información del ultimo login de SSH, para ello la opción PrintLastLog debe estar a NO.
  • También borré todo el contenido de /etc/motd, ejecutando: >/etc/motd

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s