Capítulo 8: Realización de tareas básicas sobre sistemas operativos libres y propietarios

Publicado por P. Ruiz en

8.9. Automatización de tareas del sistema.

Hoy en día, casi todos los sistemas operativos incluyen herramientas que nos permiten evitar la realización manual de tareas administrativas que…

  1. Se repiten de forma sistemática a lo largo del tiempo (como las copias de seguridad)

  2. Que se realizan a horas intempestivas para evitar comprometer el rendimiento del equipo en los momentos en los que más falta haga (como la defragmentación del disco o la descarga e instalación de actualizaciones).

La automatización de tareas del sistema nos permite programar la ejecución de programas o secuencias de comandos, para que se produzca a una hora determinada y, en su caso, con una frecuencia en particular.

En el caso de Windows, esta situación la cubre el Programador de tareas, que nos permite automatizar tareas en función de que se produzcan diferentes circunstancias:

  • Cuando llegue un momento particular del futuro.

  • Cuando se produzca un determinado evento.

  • Con una frecuencia determinada, indicada por el usuario.

A modo de ejemplo, puedes ver cómo funciona consultando los siguientes artículos:

Actividad 11: Programación de tareas en Windows

Crea una nueva tarea programada desde la línea de comandos, con el nombre tarea01, que ejecute el Bloc de notas todos los días a la misma hora (debes elegir la hora para poder comprobar su funcionamiento en clase).

Una vez comprobado el funcionamiento correcto de la tarea anterior, edítala desde la interfaz gráfica para que se ejecute únicamente los fines de semana.

De nuevo desde el entorno gráfico, crea una nueva tarea, con el nombre tarea02, que ejecute el navegador cada vez que se inicie sesión en el sistema operativo.

Hasta hace algún tiempo, si queríamos cubrir esta necesidad desde la interfaz gráfica de Ubuntu, podíamos recurrir al programa gnome-schedule. Sin embargo, parece que el desarrollo de este programa se encuentra detenido y ya ni siquiera se encuentra disponible en los repositorios de las últimas versiones del sistema.

Aún así, si tienes curiosidad por saber cómo funciona gnome-schedule, puedes consultar nuestro artículo Programar una tarea que apague Ubuntu 14.04 LTS automáticamente.

De cualquier modo, seguro que ya has reparado en que, en Ubuntu, muchas de las tareas administrativas se hacen desde la línea de comandos. En el caso particular de las tareas programadas se utilizan dos mecanismos diferentes:

Actividad 12: Programación de tareas en Linux

Crea una nueva tarea programada desde la línea de comandos que ejecute el gEdit todos los días a la misma hora (debes elegir la hora para poder comprobar su funcionamiento en clase).

Una vez comprobado el funcionamiento correcto de la tarea anterior, edítala para que se ejecute únicamente los fines de semana.

Desde la línea de comandos, consulta qué tareas programadas existen ahora en el sistema.

Nota: gEdit es un programa que se ejecuta en la interfaz gráfica. Como Ubuntu está diseñado para utilizar diferentes monitores, habrá que indicarle en cual queremos que aparezca el programa. También es recomendable usar la ruta completa del ejecutable, por si la variable $PATH no tuviese el contenido que esperamos.

Por lo tanto, la orden que debemos programar dentro de crontab tendría un aspecto como este:

export DISPLAY=:0;/usr/bin/gedit

Actividad 13: Diccionario de conceptos

Crea un pequeño diccionario con los conceptos explicados en este capítulo. Cada entrada deberá contener el nombre del término y una explicación breve del mismo.