Buenos días/tardes, tengo poco en esto de linux, y me decidí crear un archivo shell que me respalde las bases de datos y me las envié a mi correo, investigando lo pude crear, y lo logro ejecutar desde ssh, pero cuando lo configure en crontab se ejecuta pero no realiza su función, probé creando otro archivo shell que solo mande un mensaje, pero igual tampoco funciona.
Al parcer los archivos si se ejecutan pero no realizan su funcion, digo que si se ejecutan por que me genera estos logs:
Código:
Sep 22 14:50:01 sinaloense CROND[31594]: (root) CMD (/home/backups/backups.sh)
y
Código:
Sep 22 15:20:01 sinaloense CROND[32582]: (root) CMD (/usr/local/bin/test.sh)
Igualmente dejo el codigo que cree para generar los backups y enviarlos a mi correo, y como ya dije antes al ejecutarlo desde ssh si hace su trabajo, pero cuando el crontab lo ejecuta no lo hace:
Código:
#! /bin/bash
#
# Creado por: Sinaloense
#
# Variables
dir="/home/backups/"
username="sinaloense"
pass="xxxxxx"
databases="amx_bans game_panel sinaloense totopizza"
name="mexican-servers"
date=$(date +"%d-%m-%Y")
hour=$(date +"%H:%M:%S")
extension=".sql.gz"
mail="[email protected]"
#
# Proceso
# Generamos el archivo sql y lo comprimimos en gzip
# echo "Generando..."
mysqldump --user=$username --password=$pass --databases $databases | gzip > $dir${name}_$date-$hour$extension
# echo "Backup generado correctamente"
#
# Enviamos la base de datos al correo
# echo "Enviando base de datos a: $mail"
echo -e "Fecha: $date\nHora: $hour\nBases de datos incluidas: ${databases}" | mutt -a "$dir${name}_$date-$hour$extension" -s "Base de datos: $name $date $hour" -- $mail
# echo "Backup enviado correctamente"
Con esto probe en crontab:
Código:
0 8 * * * /home/backups/backups.sh
* * * * * /home/backups/test.sh
* * * * * /usr/local/bin/test.sh
Espero me puedan ayudar.
Edit: Utilizo Centos 6, openvz.