【メモ】ローカルからAWSのEC2にフォルダを転送する際に詰まったところ


背景

AWSのEC2にファイル転送するときに少し詰まったのでメモ

フォルダ転送コマンド

キーのあるディレクトリに移動し以下のコマンドを実行すればローカルフォルダを転送できる

$ scp -i [.pemファイルの場所].pem -r [転送元のローカルフォルダの場所] [ユーザー名]@[パブリックDNSかパブリックIP]:[転送先の場所]

・オプションの意味
-i :接続に使用する公開鍵ファイルを指定する
-r :ディレクトリ内を再帰的にコピーする

エラー

以下のようなエラーが出た

Permission denied (publickey). 

解決策

AWSで作成したインスタンスのオーナーは”ec2-user”(Amazon Linux の場合)しかし、デフォルトではアクセス権限がないため、”ec2-user”(オーナー)に書き込み権限を与えることで解決した

awsインスタンスにssh接続して以下のコマンドを実行し書き込み権限を与える

sudo chown -R ec2-user [転送先]

参考文献

エラー「Permission denied.」と「No such file or directory.」の判別方法