Estoy ejecutando una aplicación Rails en mi servidor Ubuntu 12.04. He configurado una tarea cron para realizar una copia de seguridad de todos los archivos cargados en mi aplicación todas las mañanas a las 2 am. Son muchos archivos (alrededor de 900 mb). Pero cuando los usuarios tienen que usar la aplicación más tarde en la mañana, pueden acceder a ella. Así que inicié sesión con SSH (que va increíblemente lento) cuando finalmente ejecuto un comando superior y veo que el proceso gzip está llenando los 10 primeros. Son bastante pequeños, pero sospecho que hay aún más.
Este es el comando tar que se ejecuta
tar -cvzf $BASEBACKUP/uploads-$DATE.tar.gz /var/www/bptrial/current/public/uploads/* --exclude=tmp
Mi crontab
* 2 * * * cd /home/user/backup && sh mysql_backup.sh && sh files_backup.sh >> /tmp/cron.log
¿Realmente debería llevar tantas horas comprimir 900 MB de archivos? ¿Y por qué tiene que comerse todos los recursos?
Respuesta1
Creo que fkraiem tiene razón.
Elaborar:
Según las páginas de manual de crontab
user@host $ man 5 crontab
Los campos de hora y fecha son:
field allowed values
----- --------------
minute 0-59
hour 0-23
day of month 1-31
month 1-12 (or names, see below)
day of week 0-7 (0 or 7 is Sun, or use names)
A field may be an asterisk (*), which always stands for ``first-last''.
A tu mando
#m h dom mon dow command
* 2 * * * cd /home/user/backup...
Estás diciendo CADA minuto de la hora 2 de cada día de cada mes de cada día de la semana. En otras palabras, cada minuto de las 2 a.m. iniciará otra instancia de su comando dado.