2016-07-10 29 views
-2

私は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のために、絶対パスを忘れてしまったことが判明

答えて

0

それはいくつかのオプションを示していますし、まだ他の人に役立つかもしれないので、私は質問をしておこう。

関連する問題