Capítulo 7: Realización de tareas básicas (Parte 2)
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 se repiten de forma sistemática a lo largo del tiempo (como las copias de seguridad) o 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:
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.
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.
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:
- Cuando la tarea programada se va a repetir a intervalos regulares. El servicio que se encarga de ejecutar este tipo de tareas es cron, que está formado por el demonio crond y varias tablas que definen los trabajos que se deben ejecutar y con qué frecuencia. Normalmente, crond se inicia durante el arranque del sistema y se activa cada minuto para revisar las tablas y comprobar si debe ejecutar alguna acción.
Puedes ver ejemplos de su funcionamiento en nuestros siguientes artículos:
- Cuando la tarea programada se va a ejecutar sólo una vez, cuando llegue el momento oportuno. Para cumplir con este objetivo, disponemos del comando at. Al ejecutarlo, se pone en funcionamiento el servicio atd que controlará el momento exacto en el que se ejecutará el comando que le hayamos indicado. El comando at guarda los valores de las variables de entorno y el directorio actual y los utilizará para ejecutar la tarea, de forma que no le afecten los cambios que se produzcan después de programarla.
Para ilustrar su funcionamiento, puedes consultar estos artículos: