どうも、守銭奴です!
先日、写真や動画の保存先をAWS S3からGoogle Oneへ移行しました。
移行作業中はChatGPT先生にかなり助けてもらったのですが、数年後の私は確実に全部忘れている気がするので、実際に使ったコマンドをまとめておきます。
同じように
「AWSよく分からんけど昔の自分が設定したやつを使ってる」
という人の参考にもなれば幸いです。
ブラウザのAWS管理画面上で使うAWS Cloudshellと、自分のPCのターミナルで使ったコマンド達です。
バケット一覧を確認する
まずは自分が持っているバケットを確認します。
aws s3 ls
実行するとこんな感じで一覧が表示されます。
2023-01-01 00:00:00 photo
2023-01-01 00:00:00 backup
2023-01-01 00:00:00 project
S3の容量を確認する
移行前に一番知りたかったのが容量です。
aws s3 ls s3://バケット名 --recursive --summarize
実行すると最後に
Total Objects: xxxx
Total Size: xxxxxxxx
が表示されます。
Total Sizeが使用容量です。
私の場合、3つあるバケットの内、一番大きそうなバケットが93GiBでした。
実際に作業してみた時の体験談を別の記事に書いています。
AWS CLIを設定する
自分のPCからAWSを操作する場合は認証設定が必要でした。
aws configure
実行すると
AWS Access Key ID:
AWS Secret Access Key:
Default region name:
Default output format:
を聞かれます。
IAMユーザー作成時に取得した情報を入力すればOKです。
IAMユーザー作成については別記事で詳しく書いています。
S3からファイルをダウンロードする
実際にダウンロードした時のコマンドはこちら。
aws s3 cp "s3://バケット名/フォルダ名/" ~/Downloads/ --recursive
実行すると
download: s3://...
download: s3://...
download: s3://...
というログが流れます。
最初見た時は
「やったぁ成功!」
と思ったのですが、DL先にファイルが見つからなくて数時間迷子になりました。
原因は認証設定(IAM)でした。自分PCのターミナルで色々やらんといかんかったとは。
認証が終わってから実行すると、無事ダウンロードフォルダへ保存されました。
一番驚いたこと
S3からのダウンロード速度です。
2GBくらいのデータが体感では一瞬で落ちてきました。
一方でGoogle Driveへのアップロードは(当然ですが)かなり時間がかかりました。
移行作業中は
- S3からダウンロード
- Google Driveへアップロード
- ローカルから削除
を繰り返していました。
まとめ
今回の移行で実際に使ったコマンドはそこまで多くありませんでした。
- バケット確認
- 容量確認
- 認証設定
- ダウンロード
この4つができれば移行作業は進められます。
数年後の私へ。
またAWSを触ることがあったら、まずこの記事を読んでから作業を始めてください。
ではでは

コメント