さくらのクラウド オブジェクトストレージ

AWS CLI を利用する

ここからは、AWS CLI の機能を利用することで、 Ubuntu 24.04 の中にあるファイルをオブジェクトストレージにアップロードしてみます。
さくらのオブジェクトストレージにローカルファイルをアップロードする
及び、 AWS CLI の最新バージョンのインストールまたは更新
が参考になります。
まずは、ubuntu に AWS CLI を入れることが必要です。
さくらのオブジェクトストレージはファイル操作手続きに Amazon S3 プロトコルを採用し、 バックエンドストレージとして使用できるようになっています。
よって、AWS CLI を ubuntu にインストールします。
今回は、Windows11 WSL2 Ubuntu の中に AWS CLI を入れます。
Windows11 WSL2 Ubuntu の作成方法は Windows11 WSL2 Ubuntu 24.04 LTS 概要 以下に書いてありますので参照してみてください。   

ubuntu に AWS CLI をインストール

Ubuntu 24.04 に AWS CLI をインストールします。
まずは Windows11 WSL2 Ubuntu 24.04 LTS を起動します。
Ubuntu をアップデートしておきましょう。
yamada@yama:~$ sudo apt update
yamada@yama:~$ sudo apt upgrade
yamada@yama:~$ sudo apt autoremove
yamada@yama:~$ sudo shutdown -r now
AWS CLI をインストールするための推奨の方法は、インストールスクリプトです。
Linux 版を利用します。
これが簡単なようです。
yamada@yama:~$ curl -fsSL https://awscli.amazonaws.com/v2/install.sh | bash
[動作説明]
curl -sS https://xxx...
-s で進行状況メーターやエラーメッセージを表示しないようにします。
ただし URL や Port を間違えた時に気づけないので、 -S show-error を一緒に指定しておきます。
curl -fL
-f エラーのレスポンスが返ってきても何も表示しないようにする。
-L リダイレクト先のURLにもリクエストを発行する。
| bash でダウンロードしたアプリが自動的に起動します。
[結果]

Resolving user-local install paths:
  HOME=/home/yamada
  XDG_DATA_HOME=
  XDG_BIN_HOME=
Installing AWS CLI 2.36.48
Downloading AWS CLI installer from https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.36.48.zip?src=script-exe
######################################################################## 100.0%
Downloading AWS CLI signature from https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.36.48.zip.sig?src=script-exe
######################################################################## 100.0%
GPG signature verified.
You can now run: /home/yamada/.local/bin/aws --version
AWS CLI 2.36.48 installed to /home/yamada/.local/share/aws-cli
Ensure /home/yamada/.local/bin is on your PATH. When multiple installs exist, PATH order determines which 'aws' runs.

/home/yamada/.local/bin に AWS CLI がインストールされました。

AWS CLI 初期設定

さくらのオブジェクトストレージにアクセスするために、AWS CLIの初期設定を行ないます。

yamada@yama:~$ aws configure
Tip: You can deliver temporary credentials to the AWS CLI using your AWS Console session by running the command 'aws login'.

AWS Access Key ID [None]: FZ****72*J***Z0A**LB アクセスキーID(a)を入力
AWS Secret Access Key [None]: Nb*****9uQK*****m5H*****pTe*****hU****A=  シークレットアクセスキー(a)を入力
Default region name [None]: jp-north-1 私の場合は、石狩第1サイト リージョン jp-north-1 を入力
Default output format [None]: json

現在作成されているオブジェクトストレージ一覧を確認します。

yamada@yama:~$ aws --endpoint-url=https://s3.isk01.sakurastorage.jp s3 ls
[結果]
2026-05-27 18:04:57 76bucket

私が作成したバケット 76bucket が見えました。
76bucket バケットに
\\wsl.localhost\Ubuntu-24.04\home\yamada\Pictures
にある \test1.png をアップします。

yamada@yama:~$ aws --endpoint-url=https://s3.isk01.sakurastorage.jp s3 cp ~/Pictures/test1.png s3://76bucket/
76bucket は私が作ったバケット名
[結果]
upload: Pictures/test1.png to s3://76bucket/test1.png

Web ブラウザでオブジェクトストレージにファイルがアップされているか確認します。

yamada@yama:~$ aws --endpoint-url=https://s3.isk01.sakurastorage.jp s3 ls s3://76bucket
[結果]
                           PRE folder-1/
2026-05-27 18:17:28       1288 test.png
2026-09-19 16:48:45       4824 test1.png

Web ブラウザでもオブジェクトストレージにファイルがアップされているか確認してみます。


  • オブジェクトストレージ確認

  • endpoint-url 入力省略

    --endpoint-url はいちいち設定するのは面倒です。
    yamada@yama:~$ export AWS_ENDPOINT_URL_S3="https://s3.isk01.sakurastorage.jp"
    とすると、--endpoint-url の入力を省略することができます。
    yamada@yama:~$ aws s3 ls
    [結果]
    2026-05-27 18:04:57 76bucket
    すっきりしました。
    もちろん
    yamada@yama:~$ aws --endpoint-url=https://s3.isk01.sakurastorage.jp s3 ls
    としても OK です。
    問題は Ubuntu を再起動すると環境変数 export AWS_ENDPOINT の再設定をする必要があります。
    環境変数だけでなく共有設定ファイル(~/.aws/config)も利用できます。
    設定ファイルを見ると
    yamada@yama:~$ nano .aws/config
    [default]
    region = jp-north-1
    output = json
    となっていますので、最後に
    endpoint_url = https://s3.isk01.sakurastorage.jp
    の1行を追加します。
    追記したら、^O Enter ^X で終了します。
    内容を確認すると
    yamada@yama:~$ cat .aws/config
    [default]
    region = jp-north-1
    output = json
    endpoint_url = https://s3.isk01.sakurastorage.jp
    となっています。
    これで、
    yamada@yama:~$ aws s3 ls
    [結果]
    2026-05-27 18:04:57 76bucket
    となりすっきりしました。
    再起動後も問題なしです。
    もちろん
    yamada@yama:~$ aws --endpoint-url=https://s3.isk01.sakurastorage.jp s3 ls
    も問題なく動作します。

    AWS s3 コマンドでダウンロード

    ここまでは curl -X GET でのダウンロード方法を照会しました。
    yamada@yama:~$ curl -X GET "https://s3.isk01.sakurastorage.jp/76bucket/test.png" -o test.png
    これでも良いのですが、今回は、さくらのオブジェクトストレージ folder-1 にある test.png を AWS s3 コマンドを使ってダウンロードします。
    76bucket/test1.png のファイルを
    別名 test2.png の名前で /home/yamada/Pictures/ にダウンロードします。
    yamada@yama:~$ aws s3 cp s3://76bucket/test1.png Pictures/test2.png
    [結果]
    download: s3://76bucket/test1.png to Pictures/test2.png

    ついでにアップロードもやってみましょう。
    /home/yamada/Pictures/test1.png を test3.png
    の別名で s3://76bucket/にアップロードします。
    yamada@yama:~$ aws s3 cp ./Pictures/test1.png s3://76bucket/test3.png
    [結果]
    upload: Pictures/test1.png to s3://76bucket/test3.png

    ここまでで、AWS s3 コマンドを使ってオブジェクトストレージが利用できるようになりました。
    引き続き、Python の中でオブジェクトストレージが利用できるようにします。


  • Python の中でオブジェクトストレージを利用 に進む
  • さくらのクラウド オブジェクトストレージ概要 に戻る
  • 70VPS に戻る


    Hiroo 散歩通り あだん
    あだん google 情報
    Hiroo Station
    イザカヤあだん
    Hiroo 散歩通り あだん
    あだん google 情報