このページでは、コマンドラインから HTTPS を使用して Cloud Storage にアクセスできる gsutil のインストールと設定について説明します。
gsutil をインストールすると、一般公開データにすぐにアクセスできるため、許可されている読み取りと書き込みを行うことができます。保護された共有データにアクセスするには、Cloud Storage サービスによる認証が必要です。課金を有効にすると、自分のバケットを作成、管理できます。
システム要件
gsutil ツールは、Linux / Unix、Mac OS、Windows(XP 以降)で動作します。
gsutil バージョン 5.32 以降では Python 3.8~3.12 が必要です。これは、Python バージョン マネージャーを使用するか、適切なバージョンをインストールすることで入手できます。
次の手順では、Python バージョンを管理する方法について説明します。
前提条件: Python バージョン マネージャー(pyenv)をインストールし、適切な Python バージョンをインストールします。
-
グローバル Python バージョンを設定します。
-
Python 3.12.x をグローバル バージョンとして設定するには:
pyenv global 3.12.x
-
または、特定のプロジェクト フォルダの Python バージョンをローカルに設定します。
pyenv local 3.12.x
-
Python 3.12.x をグローバル バージョンとして設定するには:
-
正しい Python バージョンが使用されていることを確認します。
python --version
次のように表示されます。
Python 3.12.x
方法 1: Homebrew(brew)を使用する
前提条件: Homebrew をインストールし、Homebrew から適切な Python バージョンをインストールします。
-
特定の Python バージョンをデフォルトとして設定します。
-
必要なバージョンを
$PATH
に追加します。たとえば、Python 3.12 を使用するには、次のようにします。export PATH="/usr/local/opt/python@3.12/bin:$PATH"
-
この変更を永続的なものにするには、シェル構成ファイル(
~/.bash_profile
、~/.zshrc
、~/.bashrc
)にパスを追加します。
-
必要なバージョンを
-
正しい Python バージョンが使用されていることを確認します。
python --version
次のように表示されます。
Python 3.12.x
方法 2: pyenv を使用する
前提条件: Python バージョン マネージャー(pyenv)をインストールし、pyenv を使用して適切な Python バージョンをインストールします。
-
グローバル Python バージョンを設定します。
-
Python バージョンをグローバル(すべてのターミナルに対して)に設定するには:
pyenv global 3.12.x
-
または、特定のプロジェクト フォルダの Python バージョンをローカルに設定します。
pyenv local 3.12.x
-
Python バージョンをグローバル(すべてのターミナルに対して)に設定するには:
-
正しい Python バージョンが使用されていることを確認します。
python --version
次のように表示されます。
Python 3.12.x
前提条件: Python バージョン マネージャー(pyenv-win)をインストールし、pyenv を使用して適切な Python バージョンをインストールします。
-
グローバル Python バージョンを設定します。
-
Python 3.12.x をグローバル バージョンとして設定するには:
pyenv global 3.12.x
-
または、特定のプロジェクト フォルダの Python バージョンをローカルに設定します。
pyenv local 3.12.x
-
Python 3.12.x をグローバル バージョンとして設定するには:
-
正しい Python バージョンが使用されていることを確認します。
python --version
次のように表示されます。
Python 3.12.x
- 複合オブジェクトを使用する場合は、コンパイル済みの crcmod をインストールする必要があります。これは、Windows では 32 ビット版 Python でのみ利用可能です。crcmod の詳細については、gsutil をインストールして
gsutil help crc32c
コマンドを実行し、ヘルプトピックをご覧ください。
gsutil のインストール
gsutil のインストールと更新については、Google Cloud CLI の一部として行う場合に公式なサポートの対象となります。
始める前に
Google Cloud CLI と gsutil には、互換性の問題を引き起こす可能性がある Python バージョンの依存関係があります。Google Cloud CLI には Python 3.8~3.13 が必要ですが、gsutil には Python 3.8~3.12 が必要です。
gsutil をインストールするには、Google Cloud CLI の一部としてインストールすることをおすすめします。gsutil を直接インストールする場合は、互換性の問題を回避するため、Python 3.8~3.12 を使用してください。
Google Cloud CLI の一部としての gsutil のインストール
Google Cloud CLI の一部としてインストールするには、オペレーティング システムで次の操作を行います。
- サポートされているバージョンの Python を使用していることを確認します。Google Cloud CLI には Python 3.8~3.13 が必要です。x86_64 Linux パッケージには、デフォルトで優先される Python インタープリタがバンドルされています。Python インタープリタの選択方法と構成方法については、
gcloud topic startup
をご覧ください。 - 次のいずれかをダウンロードします。
プラットフォーム パッケージ名 サイズ SHA256 チェックサム Linux 64 ビット (x86_64)
google-cloud-cli-linux-x86_64.tar.gz 148.8 MB fa9a93f15e8e923e0fa7f2f290606fdad2479e276ebee0132a1e94cae5504477 Linux 64 ビット (Arm)
google-cloud-cli-linux-arm.tar.gz 55.5 MB f3f28a4a40ab0674cc1fe9e883b1afecc0458d57f91d1e6565a7020df4d2b5bb Linux 32 ビット (x86)
google-cloud-cli-linux-x86.tar.gz 55.5 MB 069c74a1d3c102dafc84977790e9225a481225273a69c1e566e7264fd76d6e19 Linux アーカイブ ファイルをダウンロードするには、次のコマンドを実行します。
curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-cli-linux-x86_64.tar.gz
上記の表を参照し、google-cloud-cli-linux-x86_64.tar.gz を構成に適用される
*.tar.gz
パッケージ名に置き換えてください。 - ファイルのコンテンツをファイル システム(できればホーム ディレクトリ)に抽出するには、次のコマンドを実行します。
省略可: 既存のインストールを置き換えるには、既存のtar -xf google-cloud-cli-linux-x86_64.tar.gz
google-cloud-sdk
ディレクトリを削除し、同じ場所にアーカイブを展開します。 - (省略可)gcloud CLI を
PATH
に追加します。シェルと使用統計情報の収集ではコマンドの補完を利用できます。次のコマンドを使用して(前の手順で展開したフォルダのルートから)インストール スクリプトを実行します。 これは、インタラクティブではない方法(スクリプトを使用する場合など)や、フラグとして設定を渡す方法で行うこともできます。使用可能なフラグを表示するには、次のコマンドを実行します。./google-cloud-sdk/install.sh
./google-cloud-sdk/install.sh --help
- gcloud CLI の改善のために匿名の使用統計情報を送信する場合、プロンプトが表示されたら「
Y
」と応答します。 -
gcloud CLI を
PATH
に追加してコマンドの補完を有効にする場合は、プロンプトが表示されたら「Y
」と応答します。
- gcloud CLI の改善のために匿名の使用統計情報を送信する場合、プロンプトが表示されたら「
- 前の手順で
PATH
を更新した場合は、変更が反映されるように新しいターミナルを開きます。 - gcloud CLI を初期化するには、
gcloud init
を実行します。 - 省略可: コンポーネント マネージャーを使用して追加コンポーネントをインストールします。
./google-cloud-sdk/bin/gcloud init
パッケージの内容
Debian システムと Ubuntu システムにインストールする場合、gcloud CLI はパッケージ形式で利用できます。このパッケージに含まれているのは、gcloud
、gcloud alpha
、gcloud beta
、gsutil
、bq
の各コマンドのみです。kubectl
は含まれていません。また、gcloud
コマンドでアプリケーションをデプロイするために必要な App Engine 拡張機能も含まれていません。これらのコンポーネントが必要な場合は、個別にインストールする必要があります。
gcloud CLI をインストールする前に、ご使用のオペレーティング システムが次の要件を満たしていることを確認してください。
- サポート終了になっていない Ubuntu リリース、またはサポート終了になっていない Debian 安定版リリースである
- 最近、このパッケージが更新された
sudo apt-get update
apt-transport-https
とcurl
がインストールされているsudo apt-get install apt-transport-https ca-certificates gnupg curl
- Google Cloud 公開鍵をインポートします。
新しいディストリビューション(Debian 9 以降または Ubuntu 18.04 以降)の場合は、次のコマンドを実行します。
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg
- 古いディストリビューションの場合は、次のコマンドを実行します。
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
使用しているディストリビューションの apt-key コマンドで
--keyring
引数がサポートされていない場合は、次のコマンドを実行します。curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
鍵が期限切れで最新バージョンを取得できない場合は、最新の apt-get.gpg 鍵ファイルを取得します。
- gcloud CLI の配布 URI をパッケージ ソースとして追加します。
- 新しいディストリビューション(Debian 9 以降または Ubuntu 18.04 以降)の場合は、次のコマンドを実行します。
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
sign-by オプションをサポートしていない古いディストリビューションの場合は、次のコマンドを実行します。
echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
- 新しいディストリビューション(Debian 9 以降または Ubuntu 18.04 以降)の場合は、次のコマンドを実行します。
- gcloud CLI を更新してインストールします。
プロンプトの無効化やドライランなどの、追加のsudo apt-get update && sudo apt-get install google-cloud-cli
apt-get
オプションについては、apt-get
のマニュアル ページをご覧ください。Docker のヒント: Docker イメージ内に gcloud CLI をインストールする場合は、代わりに 1 回の実行ステップを使用します。
RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg && apt-get update -y && apt-get install google-cloud-cli -y
gpg --dearmor
コマンドをサポートしていない古いベースイメージの場合:RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key --keyring /usr/share/keyrings/cloud.google.gpg add - && apt-get update -y && apt-get install google-cloud-cli -y
- (省略可)次の追加コンポーネントをインストールします。
google-cloud-cli
google-cloud-cli-anthos-auth
google-cloud-cli-app-engine-go
google-cloud-cli-app-engine-grpc
google-cloud-cli-app-engine-java
google-cloud-cli-app-engine-python
google-cloud-cli-app-engine-python-extras
google-cloud-cli-bigtable-emulator
google-cloud-cli-cbt
google-cloud-cli-cloud-build-local
google-cloud-cli-cloud-run-proxy
google-cloud-cli-config-connector
google-cloud-cli-datastore-emulator
google-cloud-cli-firestore-emulator
google-cloud-cli-gke-gcloud-auth-plugin
google-cloud-cli-kpt
google-cloud-cli-kubectl-oidc
google-cloud-cli-local-extract
google-cloud-cli-minikube
google-cloud-cli-nomos
google-cloud-cli-pubsub-emulator
google-cloud-cli-skaffold
google-cloud-cli-spanner-emulator
google-cloud-cli-terraform-validator
google-cloud-cli-tests
kubectl
たとえば、
google-cloud-cli-app-engine-java
コンポーネントは次のようにインストールできます。sudo apt-get install google-cloud-cli-app-engine-java
gcloud init
を実行して開始します。gcloud init
gcloud CLI バージョンのダウングレード
gcloud CLI を特定のバージョンに戻すには(VERSION
は 123.0.0
の形式)、次のコマンドを実行します。
sudo apt-get update && sudo apt-get install google-cloud-cli=123.0.0-0
リポジトリでは、常に最新の 10 個のリリースが利用可能です。
注: 371.0.0 より前のリリースの場合、パッケージ名は google-cloud-sdk
です。
パッケージの内容
Red Hat Enterprise Linux 7、8、9、Fedora 33 と 34、CentOS 7 と 8 の各システムにインストールする場合、gcloud CLI はパッケージ形式で利用できます。このパッケージに含まれているのは、gcloud
、gcloud alpha
、gcloud beta
、gsutil
、bq
の各コマンドのみです。kubectl
は含まれていません。また、gcloud
コマンドを使用してアプリケーションをデプロイするために必要な App Engine 拡張機能も含まれていません。このセクションの後半で説明するように、これらは個別にインストールできます。
- gcloud CLI リポジトリ情報で DNF を更新します。次のサンプル コマンドは Red Hat Enterprise Linux 9 互換のインストール用ですが、実際の構成に合わせて設定を更新してください。
sudo tee -a /etc/yum.repos.d/google-cloud-sdk.repo << EOM [google-cloud-cli] name=Google Cloud CLI baseurl=https://packages.cloud.google.com/yum/repos/cloud-sdk-el9-x86_64 enabled=1 gpgcheck=1 repo_gpgcheck=0 gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOM
- Fedora 34 または 35 にインストールする場合は、
libxcrypt-compat.x86_64
をインストールします。sudo dnf install libxcrypt-compat.x86_64
- gcloud CLI をインストールします。
sudo dnf install google-cloud-cli
- 必要に応じて、次の追加コンポーネントをインストールします。
google-cloud-cli
google-cloud-cli-anthos-auth
google-cloud-cli-app-engine-go
google-cloud-cli-app-engine-grpc
google-cloud-cli-app-engine-java
google-cloud-cli-app-engine-python
google-cloud-cli-app-engine-python-extras
google-cloud-cli-bigtable-emulator
google-cloud-cli-cbt
google-cloud-cli-cloud-build-local
google-cloud-cli-cloud-run-proxy
google-cloud-cli-config-connector
google-cloud-cli-datastore-emulator
google-cloud-cli-firestore-emulator
google-cloud-cli-gke-gcloud-auth-plugin
google-cloud-cli-kpt
google-cloud-cli-kubectl-oidc
google-cloud-cli-local-extract
google-cloud-cli-minikube
google-cloud-cli-nomos
google-cloud-cli-pubsub-emulator
google-cloud-cli-skaffold
google-cloud-cli-spanner-emulator
google-cloud-cli-terraform-validator
google-cloud-cli-tests
kubectl
たとえば、
google-cloud-cli-app-engine-java
コンポーネントは次のようにインストールできます。sudo dnf install google-cloud-cli-app-engine-java
gcloud init
を実行して開始します。gcloud init
gcloud CLI バージョンのダウングレード
gcloud CLI を特定のバージョン(VERSION
は 123.0.0
の形式)に戻す場合は、sudo dnf downgrade google-cloud-cli-VERSION
を実行します。リポジトリでは、常に最新の 10 個のリリースが利用可能です。注: 371.0.0 より前のリリースの場合、パッケージ名は google-cloud-sdk
です。
- サポートされているバージョンの Python を使用していることを確認します。
-
現在の Python バージョンを確認するには、
python3 -V
またはpython -V
を実行します。サポートされているバージョンは Python 3.8~3.13 です。 - メインのインストール スクリプトでは、CPython の Python 3.12 をインストールできます。
- それ以外の場合、サポートされている Python バージョンをインストールするには、Python.org の macOS 用 Python リリースにアクセスしてください。
- マシンに複数の Python インタープリタがインストールされている場合は、シェル内で CLOUDSDK_PYTHON 環境変数を設定して、目的のインタープリタのパスを指定します。
-
Python インタープリタの選択方法と構成方法については、
gcloud topic startup
をご覧ください。
-
現在の Python バージョンを確認するには、
- 次のいずれかをダウンロードします。
-
アーカイブをファイル システム上の任意の場所に展開します。ホーム ディレクトリを使用することをおすすめします。macOS では、ダウンロードした
.tar.gz
アーカイブ ファイルを任意の場所で開くことでこれを実現できます。既存のインストールを置き換えるには、既存の
google-cloud-sdk
ディレクトリを削除し、同じ場所にアーカイブを展開します。 - 次のコマンドを使用して(前の手順で展開したフォルダのルートから)インストール スクリプトを実行します。
./google-cloud-sdk/install.sh
スクリプトから、Python 3.12 と特定の推奨モジュールをインストールするよう求められます。
インタラクティブではない方法(スクリプトを使用する場合など)や、フラグとして設定を渡す方法でインストールすることもできます。使用可能なフラグの説明を確認するには、次のコマンドを実行します。 スクリーン リーダー モードを有効にしてインストール スクリプトを実行するには:./google-cloud-sdk/install.sh --help
省略可。./google-cloud-sdk/install.sh --screen-reader=true
- gcloud CLI の改善のために匿名の使用統計情報を送信する場合、プロンプトが表示されたら「
Y
」と応答します。 -
gcloud CLI を
PATH
に追加してコマンドの補完を有効にする場合は、プロンプトが表示されたら「Y
」と応答します。
- gcloud CLI の改善のために匿名の使用統計情報を送信する場合、プロンプトが表示されたら「
- 前の手順で
PATH
を更新した場合は、変更が反映されるように新しいターミナルを開きます。 -
gcloud CLI を初期化するには、
gcloud init
を実行します。 - 省略可。コンポーネント マネージャーを使用して追加コンポーネントをインストールします。
プラットフォーム | パッケージ | サイズ | SHA256 チェックサム |
---|---|---|---|
macOS 64 ビット (x86_64) |
google-cloud-cli-darwin-x86_64.tar.gz | 55.6 MB | bf69d060a93ee74e5307973a96cd4e9d6faa8a33753d7a50a3057c523861000e |
macOS 64 ビット (ARM64, Apple silicon) |
google-cloud-cli-darwin-arm.tar.gz | 55.5 MB | faa42cb9a4aa553de17735dc9bfdc4ee13f343005c72b455ad103956e85f3845 |
macOS 32 ビット (x86) |
google-cloud-cli-darwin-x86.tar.gz | 54.1 MB | fc59c8c48da7d746b0fd116a0353cb7cef2765ad5ffb4b37e088fee278344fc8 |
./google-cloud-sdk/bin/gcloud init
-
Google Cloud CLI は Windows 8.1 以降と Windows Server 2012 以降で動作します。
-
Google Cloud CLI インストーラをダウンロードします。
または、PowerShell ターミナルを開き、以下の PowerShell コマンドを実行します。
(New-Object Net.WebClient).DownloadFile("https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe", "$env:Temp\GoogleCloudSDKInstaller.exe") & $env:Temp\GoogleCloudSDKInstaller.exe
-
インストーラを起動して、画面の指示に沿って操作します。インストーラには Google LLC による署名が付いています。
スクリーン リーダーを使用している場合は、[スクリーン リーダーモードをオンにする] チェックボックスをオンにします。このオプションで
gcloud
を構成すると、Unicode スピナーの代わりにステータス トラッカーが使用され、進行状況が割合で表示されます。また、テーブルがフラット化されます。詳しくは、ユーザー補助機能のガイドをご覧ください。 -
Google Cloud CLI には Python が必要です。サポートされているバージョンは Python 3.8~3.13 です。デフォルトでは、Google Cloud CLI の Windows バージョンには Python 3 がバンドルされています。Google Cloud CLI を使用するには、オペレーティング システムでサポートされているバージョンの Python を実行する必要があります。
インストーラにより、必要な Python バージョンを含むすべての必要な依存関係がインストールされます。Google Cloud CLI はデフォルトで Python 3 をインストールして管理しますが、必要であれば、バンドル版 Python をインストールするオプションのチェックボックスをオフにすることで、既存の Python のインストールを使用できます。既存の Python インストール環境の使用方法については、
gcloud topic startup
をご覧ください。 インストールが完了すると、スタート メニューとデスクトップ ショートカットの作成、Google Cloud CLI シェルの起動、gcloud CLI の構成を行うオプションが表示されます。シェルを開始するオプションをそのまま使用して、選択したインストール環境を構成します。これにより、ターミナル ウィンドウが開いて
gcloud init
コマンドが実行されます。- デフォルトのインストールには、
gcloud
コマンドでアプリケーションをデプロイするのに必要な App Engine 拡張機能は含まれていません。これらのコンポーネントは、gcloud CLI コンポーネント マネージャーを使用してインストールできます。
find
コマンドが認識されないことが原因でインストールが失敗する場合は、find
が格納されているフォルダがPATH
環境変数に含まれていることを確認してください。通常、これはC:\WINDOWS\system32;
です。- gcloud CLI をアンインストールした場合は、gcloud CLI を再度インストールする前にシステムを再起動する必要があります。
- 解凍できない場合は、管理者としてインストーラを実行します。
gsutil
のインストールの一環として、正しい Python バージョンを使用するように CLOUDSDK_PYTHON
環境変数を設定する必要があります。詳細については、(gcloud startup topic
)をご覧ください。
components update
コマンド(gcloud components update
)を使用して更新を実行します。
保護下のデータにアクセスするための認証情報のセットアップ
保護下のデータにアクセスしたり、保護下のバケットに書き込みを行うには、認証情報(認証)をセットアップする必要があります。たとえば、別のユーザーが Cloud Storage アカウントを作成して、特定のユーザーのみがアクセス可能なデータをアップロードした場合は、そのデータにアクセスできるように Cloud Storage サービスに対する認証情報を設定する必要があります。
gsutil を Google Cloud CLI で使用する場合、OAuth2 を使用して Cloud Storage リソースへのアクセスを認証し、認可します。アクセスを確立するには、gcloud init
コマンドを実行します。ユーザー アカウントへのログインなどの操作は、コマンドラインの手順に沿って行います。インストール手順を完了している場合、この設定はすでに実行されている可能性があります。以前に gcloud init
を実行した場合、コマンドを再度実行すると、構成を再初期化するか、新しい構成を作成するかを確認されます。詳細については、Google Cloud CLI を初期化するをご覧ください。
以上で、これで、保護下のデータにアクセスする準備ができました。gsutil コマンドの一覧を表示するには、コマンド プロンプトに「gsutil
」と入力します。
トラブルシューティング
gcloud init
コマンドを使用して gsutil を認証しようとしても目的のバケットやオブジェクトにアクセスできない場合は、システムに以前のスタンドアロン版の gsutil と Google Cloud CLI バンドル版の gsutil がインストールされている可能性があります。gsutil version -l
コマンドを実行して、using cloud sdk
の値を確認します。False
と指定すると、システムがコマンドを実行するときにスタンドアロンの gsutil が使用されます。スタンドアロン版の gsutil をシステムから削除することをおすすめします。ただし、gsutil config -a
または gsutil config -e
を使用して代替認証を行うこともできます。
HMAC を使用して認証する
gsutil の認証には OAuth 2.0 が推奨されますが、認証情報の HMAC キーを使用することもできます。HMAC で認証するには、次のコマンドを使用します。
gsutil config -a
このコマンドを使用すると、認証プロセスが開始します。HMAC キーに関連付けられたアクセス ID とシークレットの入力を求められます。
HMAC キーで認証する場合は、gcloud config set pass_credentials_to_gsutil false
コマンドを使用して、Google Cloud CLI から渡された認証情報を無効にする必要があります。
mTLS を有効にする
また、相互 TLS(mTLS)を有効にすることもできます。デバイスで mTLS が有効になっている場合、デバイスは JSON API の mTLS リクエスト エンドポイントへの接続を試みます。接続が許可される前に、Cloud Storage がデバイス上の証明書を確認します。
証明書を取得する最も簡単な方法は、Google Cloud CLI を使用することです。.boto ファイルの [Credentials] に次の値を設定して、手動で設定することもできます。
-
use_client_certificate
: mTLS を使用するかどうかを制御するフラグ。 -
cert_provider_command
: gsutil が読み取る証明書を stdout に出力するシェルコマンド。
使ってみる
Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Cloud Storage のパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
Cloud Storage を無料で試す