viernes, 14 de agosto de 2015

Hasta la vista, Dashboard!

Qué encontrarás en esta entrada?
  • ¿Cómo subdividir un terminal Shell Linux?
  • ¿Cómo hacerse un dashboard con la monitorización del sistema?

Mi reciente cumpleaños ha venido acompañado de un monitor de 27 pulgadas que ridiculiza enormemente mi antigua pantalla de formato cuadrado. Sin embargo, no he querido relegarla a un rincón del olvido, y la he conectado igualmente, aunque no sé muy bien qué uso darle.


Una de las posibles aplicaciones que pensé fue la de monitorización del sistema. Me pregunté: "¿y si me hago una especie de cuadro de mando con los parámetros del equipo actualizados cada cierto intervalo?" Tras considerar varias alternativas, llegué a la conclusión de que lo más fácil sería utilizar una consola que pudiese subdividirse a mi antojo, mostrando en cada una de las partes la información que yo quisiera.

Existen varias opciones para cumplir con lo dicho anteriormente, pero la primera con la que me topé fue con... TERMINATOR. Terminator es una consola para gnome que nos permite ejecutar nuestros comandos como cualquier otra, pero que tiene un sistema de perfiles y diseños que permite la personalización del aspecto. De una manera intuitiva y gráfica (mediante el ratón) se puede subdividir la ventana en horizontal y en vertical como queramos, guardando la configuración en un diseño o "layout" cuando lo hayamos dejado a nuestro gusto. Después, en la configuración de diseños (layouts), tenemos la opción de meter un "custom command", es decir, una línea de comandos personalizada con el conjunto de órdenes que queramos que se ejecuten en cada ventana subdividida.


Una vez hecho esto, la información se guarda en un archivo de configuración llamado:

$HOME/.config/terminator/config

También podríamos optar por modificar directamente este archivo si conocemos su sintaxis.

Con esto, hacemos que al abrir Terminator con uno de sus diseños precargados nos aparezca una pantalla subdividida en la cual se ejecuten los comandos que hayamos dispuesto en cada subdivisión.

Un comando de ejemplo podría ser "top", y mostraría a tiempo real los procesos ejecutándose. Si nos vamos a una estructura un poco más compleja, yo había pensado en algo como esto:

k=1; while [ $k = 1 ] ; do clear; echo "TEMPERATURAS (actualizado a las $(date +%H:%M)):"; echo "---------------------------------------" ; echo "" ; sensors | grep ".*Temperature:" ; sleep 30 ; done

La línea realiza un bucle infinito en el que, cada 30 segundos, mira las temperaturas de la CPU y la placa base utilizando el programa "sensors" que ha de estar instalado previamente. Combinando varias líneas de este estilo, obtenemos un cuadro de mandos (o dashboard) con la estructura e información que deseemos. Ideal para mantener siempre en una pantalla auxiliar de pequeño tamaño.


Una vez guardad toda esta información en la configuración del diseño ("layout"), podemos ejecutar Terminator simplemente con un comando del tipo:

terminator -f -l Dash

El apéndice "-f" es de fullscreen (pantalla completa) y "-l Nombre_de_tu_diseño" es para cargar el "layout" que hayas configurado con anterioridad (en mi caso se llama "Dash").

No hay comentarios:

Publicar un comentario

Querido astarothista!,

Si te ha gustado la entrada y quieres dejar constancia de ello, tienes alguna sugerencia para completarla o corregirla, quieres mostrar tu opinión respecto a algo de lo que se haya hablado en esta entrada (con respeto) o simplemente quieres dejarme un mensaje a mi o a la comunidad, no dudes en comentar ;)!

Recuerda que también estamos en Facebook y en Google+.