Tentando executar um script de backup simples da AWS CLI. Ele percorre as linhas em um arquivo de inclusão, faz backup desses caminhos até o S3 e despeja a saída em um arquivo de log. Quando executo esse comando diretamente, ele é executado sem nenhum erro. Quando o executo pelo CRON, recebo o erro "Não é possível localizar credenciais" no meu log de saída.
O script de shell:
AWS_CONFIG_FILE="~/.aws/config"
while read p; do
/usr/local/bin/aws s3 cp $p s3://PATH/TO/BUCKET --recursive >> /PATH/TO/LOG 2>&1
done </PATH/TO/INCLUDE/include.txt
Eu apenas adicionei a linha ao arquivo de configuração depois que comecei a ver o erro, pensando que isso pode corrigi-lo (mesmo tendo certeza de que é onde a AWS parece por padrão).
O script do shell está sendo executado como root. Eu posso ver o arquivo de configuração da AWS no local especificado. E tudo parece bom para mim (como eu disse, funciona bem fora do CRON).
~/.aws/config
.