O trabalho do Cron falha: Não foi possível recuperar o stat do arquivo (o script funciona quando não executado do cron)

0

Eu tenho um script de backup de banco de dados que funciona bem quando eu o executo manualmente, mas se eu executá-lo via cron não funciona e eu recebo isso no log:

Mar 11 11:58:02 ip-172-XX-Y-ZZ mysqldump: Could not retrieve file stat of "/home/admin/-": [Errno 2] No such file or directory: '/home/admin/-'
Mar 11 11:58:02 ip-172-XX-Y-ZZ mysqldump: mysqldump: Got errno 32 on write

Este é o script:

#!/bin/bash
# Note: aws credentials are set with 'aws configure' after installing aws cli
mysqldump -umysqldumpuser -pmysqldumpuserpassword --all-databases | gzip -c | aws s3 cp - s3://s3-bucket-name/mysql/all-databases--'date +%Y-%m-%d--%H-%M-%S%Z'.sql.gz

crontab inclui isso:

58 0 * * * ~/scripts/mysqldump-all-databases-to-aws-s3.sh 2>&1 | /usr/bin/logger -t mysqldump

Este é um servidor Debian Jessie no AWS LightSail. Eu tenho o mesmo script e crontab em um servidor rodando o Amazon Linux e funciona bem com isso.

Eu mudei o fuso horário no servidor Debian para o meu fuso horário local, enquanto no servidor Amazon Linux ele está configurado para UTC. Talvez isso esteja causando um problema com o cron?

Você sabe por que esse script está falhando? Obrigado.

    
por Matt 12.03.2018 / 12:02

0 respostas