Un poco de… consola (II): creación de alarmas periódicas

Vamos con la segunda entrega de Un poco de… consola. La primera, para los más despitados, la tenéis aquí ;-). En esta entrega vamos a ver cómo abrir ejecutar una aplicación gráfica desde crontab y usar este mecanismo para poner unas alarmas muy molonas.

Como sabéis -y si no os lo digo yo-, cron es un administrador de procesos que nos permite lanzar, a una hora determinada, un proceso. En otras palabras, es lo que usamos cuando queremos que, por ejemplo, un script que hace copias de seguridad se lance a las 02:00 AM todos los viernes. Es algo como las “tareas programadas” de windows (salvando las distancias, claro).

Para programar tareas debemos usar el comando crontab -e. Esto abrirá el fichero correspondiente (*) donde debemos introducir los minutos, la hora, día de la semana, etc. y el comando a ejecutar (más info aquí, donde lo explican perfectamente).

Como véis, podéis ejecutar cualquier script o programa pero, si habéis intentado ejecutar una aplicación gráfica, como audacious -por ejemplo-, esto no os funcionará. Para que lo haga hay que poner env DISPLAY=:0.0 justo antes del comando a ejecutar.

Centrándonos en el ejemplo que os comentaba antes (poner alarmas con cron) podríamos poner algo así:

 

10 18 * * * env DISPLAY=:0.0 /usr/bin/audacious /mnt/disco_multimedia/mp3/alarmas

Esto reproduciría, a las 18:10 de la tarde (todos los días), las canciones que se encuentren en el directorio /mnt/disco_multimedia/mp3/alarmas.

Por tanto, lo que haríamos para poner una alarma es editar el cron con el comando crontab -e indicando la hora a la que queremos que suene y ya está. Las canciones a reproducir, en lugar de tener que irlas copiando a dicho directorio, podéis hacer enlaces simbólicos al mismo, de forma que no tendréis que realizar ningún tipo de copia y podréis tener, de una forma sencilla, una lista de canciones a reproducir a una hora determinada, esto es, a la hora de la alarma 😉

Para finalizar comentar que, por supuesto, podéis configurar tantas alarmas como queráis.

 

(*) Lo abrirá con el editor de texto que esté indicado en la variable de entorno EDITOR. Si queremos poner emacs como nuestro editor por defecto (no se me ocurre ningún motivo para no hacerlo), simplemente ponemos export EDITOR=emacs en el .bashrc de nuestro usuario. Si queréis poner vi tendréis que googlear un para saber cómo… es broma, simplemente export EDITOR=vi, pero tened en cuenta que, como dice RMSvi-vi-vi es el editor del demonio, y con eso lo digo todo.