2016-04-29 17 views
1

非常に簡単なmake bucketコマンドを持つlinuxボックスを作成しました:プロンプトからこれを実行していたs3 mb s3://bucketが正常に動作しました。CrontabがAWS資格情報を見つけることができません - linuxbox EC2

ログインしているユーザーとsudoの両方のユーザーとしてAWS configureを実行しました。上記はバケツを作成しないので、詳細は間違いありません。私は資格情報がどこにあるかということを教えしようとしている中のcrontabでこれまでいろいろなことを試してみた:make_bucket failed: s3://cronbucket/ Unable to locate credentials

私はcronで取得していますエラーメッセージがあり、このうちのいくつかは他のソリューションの融合があります問題の原因になっている可能性があります。

私のcrontabは次のようになります。

AWS_CONFIG_FILE="/home/ec2-user/.aws/config" 
SHELL=/bin/bash 
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binx 
0 0 * * * /usr/bin/env bash /opt/foo.sh &>> /tmp/foo.log 

* * * * * /usr/bin/uptime > /tmp/uptime 

* * * * * /bin/scripts/script.sh >> /bin/scripts/cronlogs/cronscript.log 2>&1 

が最初に私はちょうどバケツを作り、その後、(健全性チェックなど)の稼働時間を作成し、2つのジョブを持っていた、crontabファイルの残りの部分は他の記事からソリューションですそれは働いていないようです。

アドバイスをいただきありがとうございます。

+2

をチェックアウト

0 5 * * * . $HOME/.profile; /path/to/command/to/run 

をあなたはIAMロールを使用する必要があり(使用しているものは何でもへの変更プロファイル)。 – tedder42

+0

私はこの特定のシナリオのためにできませんでした – null

答えて

2

問題はcronがあなたのenvを取得しないということです。これにはいくつかの方法があります。あなたのプロフィールを含むbashスクリプトを実行してください。または、簡単な解決策はcrontabに含めることです。このthread

+0

ありがとう、私は今その解決策を試していますホームディレクトリが設定されています.profileは空白だったので、.aws/configを.profileにコピーして、 – null

+0

同じエラーが表示される恐れがあります - これはコマンドです:* * * * *。 $ HOME/.profile; /bin/script/script.sh >> /bin/script/cronlogs/cronscript.log 2>&1 – null

+0

メールには私のユーザーの代わりにroot @ ipを使用しようとしていることに気づきましたが、それはおそらく問題です – null

関連する問題