我正尝试在Ubuntu 14.04.3 AWS EC2上的aws环境的cron中使用aws cli cp命令。AWS CLI在cron中不起作用
EC2的用户被称作Ubuntu和住在/ home/Ubuntu的
我有我的AWS在/home/ubuntu/.aws/config配置文件
[default]
output=json
region=eu-central-1
我有我的AWS凭据文件中/home/ubuntu/.aws/credentials
[default]
aws_access_key_id=******
aws_secret_access_key=******
我的crontab看起来像这样
* * * * * sh /home/ubuntu/test.sh
shell脚本试图到S3复制测试文件是一个班轮:
/usr/local/bin/aws s3 cp test.txt s3://<my-bucket>/test.txt >> /home/ubuntu/some-log-file.log
这个cron运行,每分钟的剧本,但没有被复制到S3桶。
如果我在我的shell上手动运行脚本,它的工作原理。
我尝试(没有成功):
把正确的路径AWS(在/ usr/local/bin目录/ AWS)
前把aws_access_key_id和aws_secret_access_key到.aws/config文件作为好。
把AWS ENV瓦尔到的crontab和/或shell脚本
AWS_DEFAULT_REGION=eu-central-1
AWS_ACCESS_KEY_ID=******
AWS_SECRET_ACCESS_KEY =******
在crontab和/或shell脚本
HOME="/home/ubuntu"
定义HOME把配置和证书文件的位置到crontab
AWS_CONFIG_FILE="/home/ubuntu/.aws/config"
AWS_CREDENTIAL_FILE="/home/ubuntu/.aws/credentials"
将PATH放入crontab和/或shell脚本
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:"
有没有人知道我可能会做错什么?