AWS

【AWS-CLI】$aws configure入力後のPermission deniedへの対処法

【問題】aws configure入力後に[Error 13]Permission denied

環境

 

  • OS_Mac OS

やろうとしたこと

MacにAWS-CLI ver2のインストールを行ったので、動作チェックの意味で以下コマンドを実行。

コマンド:

which aws

出力結果:

/usr/local/bin/aws

コマンド:

aws configure

出力結果:ここでエラー

[Errno 13] Permission denied: '/Users/[ユーザー名]/.aws/credentials'

参考URL:AWS CLI v2をMacにインストールする

メモ

AWS-CLIをインストールした背景は、zappa deploy時に「botocore.exceptions.ClientError: An error occurred (AccessDeniedException)」が発生したから。とある書籍を参考にしながらAWSでのアプリ開発を行っていたが、AWSに関する詳細の説明がないままデプロイまで進んでしまったので、何に対するアクセス拒否なのかわからなかった。だからAWS専用のコマンドラインで色々触って勉強しようと思った。

【原因】credentialsへの権限がない

要は「~/.aws/credentialsへのアクセス権限がないですよ」と怒られている。

 

実際に「~/.aws」と「~/.aws/credentials」の権限設定を調べてみる。

 

コマンド:

ls -a -l ~/.aws

出力結果:

drwxr-xr-x   3 [ユーザー名]  staff    96 12  5 12:54 .
drwxr-xr-x+ 64 [ユーザー名]  staff  2048 12  5 12:54 ..
-rw-r--r--   1 root             staff   142 12  5 11:53 credentials

credentialsの所有はrootであり、グループおよびその他ユーザーは読み取りしかできない設定になっている。よって、rootで実行しない限りcredentialsへの書き込みは行えないわけだ。

 

【解決策】chownでcredentialsの所有権を変えた

以下のコマンドを実行。

sudo chown -R [ユーザー名] ~/.aws/  

例:

sudo chown -R hogehoge ~/.aws/

 

実際に変更されたか確認する。

 

コマンド:

ls -a -l ~/.aws 

出力結果:

drwxr-xr-x   3 [ユーザー名]  staff    96 12  5 12:54 .
drwxr-xr-x+ 64 [ユーザー名]  staff  2048 12  5 12:54 ..
-rw-r--r--   1 [ユーザー名]  staff   142 12  5 11:53 credentials

 

再度、以下コマンドを試す

aws configure

必要な情報を入力し、Enter。Permission deniedが出力されず、通常のコマンドラインが表示される。

 

以下のコマンドを実行し、「config」と「credentials」の2つが出力されればOK。

ls ~/.aws

参考URL

[Errno 13] Permission denied: '/root/.aws/credentials' #5392

Permission denied: '/home/ugurkaya/.aws/credentials'

macOS での AWS CLI バージョン 2 のインストール、更新、アンインストール

  • この記事を書いた人

おさむ

【データ×プログラミングで稼ぐ】Pythonで機械学習を勉強中の30歳。FXや株で死ぬほど稼げる魔法のロジックを作るのが目標。ヘッポコの私には凄く難しいので、ブログ書きながらコツコツやります。趣味は筋トレとダンス。外交型ぽい内向型。今は就活生向けのアプリ開発中。

-AWS

© 2022 Osamu Blog Powered by AFFINGER5