如果存在两个,请在脚本中指定AWS CLI配置文件

时间:2018-02-14 10:34:40

标签: amazon-ec2 aws-cli

我尝试使用自动创建AWS实例上所有EBS卷快照的脚本。此脚本在其他几个实例上运行,没有任何问题。

当前实例已配置AWS配置文件,用于其他目的。我的理解是我应该能够指定我的脚本使用的配置文件,但我无法使其工作。

我已在/home/ubuntu/.aws文件中添加了一组新凭据,方法是在已存在的默认凭据下添加以下内容:

[snapshot_creator]
aws_access_key_id=s;aldkas;dlkas;ldk
aws_secret_access_key=sdoij34895u98jret

在我尝试添加AWS_PROFILE=snapshot_creator的脚本中,但是当我运行它时,我收到错误Unable to locate credentials. You can configure credentials by running "aws configure".

因此,我删除了对/home/ubuntu/.aws的更改,而是运行aws configure --profile snapshot_creator。但是在输入所有信息后,我收到错误[Errno 17] File exists: '/home/ubuntu/.aws'

所以我再次将我的更改添加到.aws文件中,这次在脚本中为每个以aws ec2开头的命令添加参数--profile snapshot_creator,但是这次我运行脚本时得到The config profile (snapshot_creator) could not be found

如何告诉脚本使用此配置文件?我不想更改实例的环境变量,因为AWS CLI的上述其他用途用于其他目的。

1 个答案:

答案 0 :(得分:1)

凭据应存储在“/home/ubuntu/.aws/credentials”文件中

我猜这个错误是因为它无法创建目录。你能删除“.aws”文件并重新运行configure命令吗?它应该在“/home/ubuntu/.aws /”

下创建凭证文件
  

文件存在:'/ home /ubuntu / .aws'