这应该对您有用...需要使用自动 cron git pull 脚本设置一些系统,然后执行调用 ec2 java 工具的 crontab/anacron run-parts bash 脚本。通常在 amz-linux-ami(他们的 RH 克隆)中,环境变量的创建如下:
(将坚持相关文件)
执行 shell login -->source /etc/profile
将遍历 /etc/profile.d 并且source *.{users shell extension}
在这种情况下aws-apitools-common.sh
$cat aws-apitools-common.sh
export AWS_PATH=/opt/aws
export PATH=$PATH:$AWS_PATH/bin
#Prefer JDK if present (i pulled the condition to de-clutter this info)
export JAVA_HOME=/usr/lib/jvm/java
export JAVA_HOME=/usr/lib/jvm/jre
这是相关的行:
for aws_product in $(find /opt/aws/apitools /opt/aws/amitools -maxdepth 1 -type l 2>/dev/null); do
[ -e $aws_product/environment.sh ] && source $aws_product/environment.sh; done
因此脚本aws-apitools-common.sh
搜索 apitools 和 amitools,然后获取这些工具$aws_product/environment.sh
。前任:source /opt/aws/apitools/ec2/environment.sh
现在这可能是您正在寻找的(/opt/aws/apitools/ec2/environment.sh):
$cat environment.sh
# Set EC2_HOME. Called from /etc/profile.d/aws-product-common
[ -z "$EC2_HOME" ] && EC2_HOME="/opt/aws/apitools/ec2"
export EC2_HOME
简而言之,您希望在 crontab 脚本中设置/导出的环境变量,或者您的 anacron run-parted 脚本将是(我个人加载从 git repo 生成的 key.conf 文件,并让 git pull 每次触发小时,所以键和 env cat 就像脚本本身一样更新。然后作业脚本获取 conf 文件):
AWS_ACCESS_KEY="blah-blah-dingle-smith"
AWS_SECRET_KEY="yankee-doodle-shit-no-stank"
JAVA_HOME="/usr/lib/jvm/java"
EC2_HOME="/opt/aws/apitools/ec2"
EC2_URL="https://us-west-2.ec2.amazonaws.com/"
PATH="$PATH:/opt/aws/bin" # is dir contains a symlinks of tool binaries
干杯!