私はaws環境のcronでaws cli cpコマンドをUbuntu 14.04.3 AWS EC2で使用しようとしています。AWS CLIはcronで動作しません
EC2ユーザーがUbuntuのと呼ばれ、中に住んでいます/ホーム/ Ubuntuの
私はAWS
[default]
output=json
region=eu-central-1
は、私は私のAWSの資格情報を持っている/home/ubuntu/.aws/configで設定ファイルを持っています/home/ubuntu/.aws/credentials内のファイル
[default]
aws_access_key_id=******
aws_secret_access_key=******
私のcrontabはこの
* * * * * sh /home/ubuntu/test.sh
のように見えます
シェルスクリプトは、S3への上にテストファイルをコピーしようとワンライナーは、次のとおりです。
/usr/local/bin/aws s3 cp test.txt s3://<my-bucket>/test.txt >> /home/ubuntu/some-log-file.log
cronがスクリプト毎分実行されますが、何もS3バケットにコピーされません。
私は自分のシェルでスクリプトを手動で実行すると動作します。
私は(成功せず)みました:
は、AWSの前に正しい道を置くディレクトリ(/ usr/local/binに/ AWS)
.aws/configファイルにaws_access_key_idとaws_secret_access_keyを置くなどよく
置くのAWS envがのcrontabするvarsのおよび/またはシェルスクリプトのcrontab
に設定し、資格情報ファイルの場所を置くのcrontabおよび/またはシェルスクリプトHOME="/home/ubuntu"
でHOMEを定義
AWS_DEFAULT_REGION=eu-central-1
AWS_ACCESS_KEY_ID=******
AWS_SECRET_ACCESS_KEY =******
AWS_CONFIG_FILE="/home/ubuntu/.aws/config"
AWS_CREDENTIAL_FILE="/home/ubuntu/.aws/credentials"
PATHをcrontabおよび/またはシェルスクリプトに設定する
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:"
誰かが私が間違っているかもしれないアイデアはありますか?私は(/home/ubuntu/test.txt)をtest.txtのために、絶対パスを忘れてしまったことが判明