2014-01-20 74 views
4

我正在嘗試將內存使用情況監視添加到console.aws.amazon.com實例的監視選項卡上。這是一個運行Amazon Linux AMI 2013.09.2的實例。我找到了Amazon CloudWatch Monitoring Scripts for Linux,特別是mon-put-instance-data.pl,它讓我收集內存統計信息並將其作爲自定義指標報告給CloudWatch。如何在啓動時爲root用戶設置環境變量?

爲了讓這個工作,我需要設置環境變量AWS_CREDENTIAL_FILE來指向包含我的AWSAccessKeyId和AWSSecretKey的文件。我這樣做的打字:

export AWS_CREDENTIAL_FILE=/home/ec2-user/aws-scripts-mon/awscreds.template 

爲了避免重複輸入一遍又一遍,我正在尋找一種方法來設置環境變量在啓動時。我曾嘗試將代碼添加到這些文件:

/etc/rc.local file 
/etc/profile 
/home/ec2-user/.bash_profile 

作爲添加的代碼行無論是在文件似乎當我切換到root用戶工作,在那裏我應該把它?如果我在/home/ec2-user/.bash_profile中設置變量,則該變量是爲ec2用戶設置的,但不是爲root設置的。如果我然後sudo -E su它的工作,但我不知道這是否是最好的方式去做呢?

回答

4

創建一個sh文件並將代碼放入其中。然後把這個sh文件放在/etc/profile.d/文件夾中。

注意:使用root用戶創建這個sh文件。

創建實例後,該sh文件將自動運行併爲您創建環境變量,並且此環境變量將爲所有用戶所訪問。