Comandos como rsync o
mysqldump son más útiles
cuando se ejecutan de forma automática y periódica. Para eso existe cron, el planificador
de tareas de sistemas tipo Unix.
Con crontab -e editamos la tabla de tareas del usuario actual:
crontab -e
Cada línea de la tabla sigue el formato:
minuto hora día-mes mes día-semana comando
El asterisco * significa «cualquier valor». Algunos ejemplos:
0 2 * * * rsync -av /home/usuario/ /mnt/disco-externo/backup/
0 3 * * 0 mysqldump -u root -pcontraseña nombre_bd > /tmp/backup.sql
*/5 * * * * /usr/local/bin/dynhost.sh
El primer ejemplo ejecuta rsync cada día a las 2:00. El segundo, mysqldump todos los domingos
a las 3:00. El tercero, cada 5 minutos.
Para ver las tareas activas del usuario:
crontab -l
Hay que tener en cuenta que cron ejecuta los comandos en un entorno sin las variables de
la sesión interactiva. Por eso conviene usar rutas absolutas tanto para los comandos como
para los archivos que manejan.