Basit bir AWS CLI yedekleme betiği çalıştırmaya çalışıyorum. Bir içerme dosyasındaki çizgiler arasında dolaşır, bu yolları S3'e kadar yedekler ve çıktıyı bir günlük dosyasına döker. Bu komutu doğrudan çalıştırdığımda, hatasız çalışıyor. CRON üzerinden çalıştırdığımda çıktı günlüğümde "Kimlik bilgileri bulunamıyor" hatası alıyorum.
Kabuk betiği:
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
Satırı sadece config dosyasını görmeye başladım, hatayı görmeye başladım, düzeltebileceğimi düşünüyorum (AWS'nin varsayılan olarak göründüğü yer olmasına emin olduğum halde).
Shell betiği root olarak çalışıyor. AWS config dosyasını belirtilen yerde görebiliyorum. Ve hepsi bana iyi geliyor (dediğim gibi, CRON'un dışında iyi çalışıyor).
~/.aws/config
.