Crontab script não salvando o resultado no arquivo

0

Eu quero fazer backup do meu banco de dados todos os dias e escrevi um script

my.cnf

[client]
host=locahost
user=root
password='pw'

script.sh

#!/bin/bash
/bin/mysqldump --defaults-file=/home/wasifkhalil/my.cnf --set-gtid-purged=OFF testing_dump > /home/wasifkhalil/db_backups/$(date +"%Y-%m-%d_%H%M")_crm_backup.sql
exit

agora quando eu executo este script

[root@instance-main db_backups]# /home/wasifkhalil/script.sh

funciona perfeito e eu vejo o arquivo sql na pasta, mas quando eu executo no crontab ele não funciona, o que estou fazendo de errado? (para testes eu configuro para o 16º minuto de cada hora)

16 * * * * root /home/wasifkhalil/script.sh

esta é a versão do Cent OS im on

centos-release-7-3.1611.el7.centos.x86_64
    
por Wasif Khalil 17.05.2017 / 12:28

1 resposta

2

Se você deseja executar um script bash como root, é necessário editar o crontab do root assim: 16 * * * * /bin/bash /path/to/script.sh

Explicação:

16 * * * * = At minute 16th of every hour.
/bin/bash = shell interpretor.
/path/to/script.sh = path to the script that you need to schedule.
    
por 17.05.2017 / 13:00