このページでは、コマンドラインから HTTPS を使用して Cloud Storage にアクセスできる gsutil のインストールと設定について説明します。
gsutil をインストールすると、一般公開データへの読み取り / 書き込みアクセス権がすぐに付与されます。Cloud Storage サービスに対して認証すると、共有している保護下のデータへの読み取り / 書き込みアクセス権が付与されます。課金を有効にすると、自分のバケットを作成、管理できます。
システム要件
gsutil ツールは、Linux / Unix、Mac OS、Windows(XP 以降)で動作します。
gsutil バージョン 5.0 以降では Python 3.5~3.11 が必要です。これは、Python バージョン マネージャーを使用するか、適切なバージョンをインストールすることで入手できます。
次の手順では、Python バージョンを管理する方法について説明します。
前提条件: Python バージョン マネージャー(pyenv)をインストールし、適切な Python バージョンをインストールします(3.11 を推奨)。
-
グローバル Python バージョンを設定します。
-
Python 3.11.9 をグローバル バージョンとして設定するには:
pyenv global 3.11.9
-
または、特定のプロジェクト フォルダの Python バージョンをローカルに設定します。
pyenv local 3.11.9
-
Python 3.11.9 をグローバル バージョンとして設定するには:
-
正しい Python バージョンが使用されていることを確認します。
python --version
次のように表示されます。
Python 3.11.9
方法 1: Homebrew(brew)を使用する
前提条件: Homebrew をインストールし、Homebrew から適切な Python バージョン(3.11 を推奨)をインストールします。
-
特定の Python バージョンをデフォルトとして設定します。
-
必要なバージョンを
$PATH
に追加します。たとえば、Python 3.11 を使用するには、次のようにします。export PATH="/usr/local/opt/python@3.11/bin:$PATH"
-
この変更を永続的なものにするには、シェル構成ファイル(
~/.bash_profile
、~/.zshrc
、~/.bashrc
)にパスを追加します。
-
必要なバージョンを
-
正しい Python バージョンが使用されていることを確認します。
python --version
次のように表示されます。
Python 3.11.9
方法 2: pyenv を使用する
前提条件: Python バージョン マネージャー(pyenv)をインストールし、pyenv を使用して適切な Python バージョン(3.11 を推奨)をインストールします。
-
グローバル Python バージョンを設定します。
-
Python バージョンをグローバル(すべてのターミナルに対して)に設定するには:
pyenv global 3.11.9
-
または、特定のプロジェクト フォルダの Python バージョンをローカルに設定します。
pyenv local 3.11.9
-
Python バージョンをグローバル(すべてのターミナルに対して)に設定するには:
-
正しい Python バージョンが使用されていることを確認します。
python --version
次のように表示されます。
Python 3.11.9
前提条件: Python バージョン マネージャー(pyenv-win)をインストールし、pyenv を使用して適切な Python バージョン(3.11 を推奨)をインストールします。
-
グローバル Python バージョンを設定します。
-
Python 3.11.9 をグローバル バージョンとして設定するには:
pyenv global 3.11.9
-
または、特定のプロジェクト フォルダの Python バージョンをローカルに設定します。
pyenv local 3.11.9
-
Python 3.11.9 をグローバル バージョンとして設定するには:
-
正しい Python バージョンが使用されていることを確認します。
python --version
次のように表示されます。
Python 3.11.9
- 複合オブジェクトを使用する場合は、コンパイル済みの crcmod をインストールする必要があります。これは、Windows では 32 ビット版 Python でのみ利用可能です。crcmod の詳細については、gsutil をインストールして
gsutil help crc32c
コマンドを実行し、ヘルプトピックをご覧ください。
gsutil のインストール
gsutil のインストールと更新については、Google Cloud CLI の一部として行う場合に公式なサポートの対象となります。
Google Cloud CLI の一部としての gsutil のインストール
Google Cloud CLI の一部としてインストールするには、オペレーティング システムで次の操作を行います。
- サポートされているバージョンの Python を使用していることを確認します。Google Cloud CLI には Python 3.8~3.12 が必要です。x86_64 Linux パッケージには、デフォルトで優先される Python インタープリタがバンドルされています。Python インタープリタの選択方法と構成方法については、
gcloud topic startup
をご覧ください。 - 次のいずれかをダウンロードします。
プラットフォーム パッケージ名 サイズ SHA256 チェックサム Linux 64 ビット (x86_64)
google-cloud-cli-linux-x86_64.tar.gz 131.4 MB 6b51a06aea82a83784f5e4d401a2b876f1ba2d21fe4ef1f171cf65864952f1f1 Linux 64 ビット (Arm)
google-cloud-cli-linux-arm.tar.gz 53.7 MB fed03accf21201957e936e096ed167192caafa12bebded325f7ea7fc8f068241 Linux 32 ビット (x86)
google-cloud-cli-linux-x86.tar.gz 53.7 MB 1cfd2796ac9085bb15fb625aac9f22abbd6e422fd471c8b753ccee5d3f5c7d66 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 をパスに追加します。次のコマンドを使用して、解凍したフォルダのルートからインストール スクリプトを実行します。
これは、インタラクティブではない方法(スクリプトを使用する場合など)や、フラグとして設定を渡す方法で行うこともできます。使用可能なフラグを表示するには、次のコマンドを実行します。./google-cloud-sdk/install.sh
省略可。./google-cloud-sdk/install.sh --help
- gcloud CLI の改善のために匿名の使用統計情報を送信する場合、プロンプトが表示されたら「
Y
」と応答します。 - gcloud CLI を
PATH
に追加してコマンドの補完を有効にする場合は、プロンプトが表示されたら「Y
」と応答します。
- gcloud CLI の改善のために匿名の使用統計情報を送信する場合、プロンプトが表示されたら「
- 変更が反映されるように新しいターミナル ウィンドウを開きます。
- 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 | sudo 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.12 です。 - メインのインストール スクリプトでは、CPython の Python 3.11 をインストールできます。
- それ以外の場合、サポートされている Python バージョンをインストールするには、Python.org の macOS 用 Python リリースにアクセスしてください。
- マシンに複数の Python インタープリタがインストールされている場合は、シェル内で CLOUDSDK_PYTHON 環境変数を設定して、目的のインタープリタのパスを指定します。
-
Python インタープリタの選択方法と構成方法については、
gcloud topic startup
をご覧ください。
-
現在の Python バージョンを確認するには、
- 次のいずれかをダウンロードします。
-
アーカイブをファイル システム上の任意の場所に展開します。ホーム ディレクトリを使用することをおすすめします。macOS では、ダウンロードした
.tar.gz
アーカイブ ファイルを任意の場所で開くことでこれを実現できます。既存のインストールを置き換えるには、既存の
google-cloud-sdk
ディレクトリを削除し、同じ場所にアーカイブを展開します。 - (省略可)インストール スクリプトを使用して、gcloud CLI ツールを
PATH
に追加します。また、シェル、使用統計情報の収集、Python 3.11 のインストールでコマンドの補完を利用できます。次のコマンドを使用して(前の手順で展開したフォルダのルートから)スクリプトを実行します。
これは、インタラクティブではない方法(スクリプトを使用する場合など)や、フラグとして設定を渡す方法で行うこともできます。使用可能なフラグの説明を確認するには、次のコマンドを実行します。./google-cloud-sdk/install.sh
スクリーン リーダー モードを有効にしてインストール スクリプトを実行するには:./google-cloud-sdk/install.sh --help
変更が反映されるように新しいターミナル ウィンドウを開きます。./google-cloud-sdk/install.sh --screen-reader=true
-
gcloud CLI を初期化するには、
gcloud init
を実行します。 - 省略可。コンポーネント マネージャーを使用して追加コンポーネントをインストールします。
プラットフォーム | パッケージ | サイズ | SHA256 チェックサム |
---|---|---|---|
macOS 64 ビット (x86_64) |
google-cloud-cli-darwin-x86_64.tar.gz | 53.7 MB | a04a881e04b8999725a675c5f47f8ae7b1cc6ba6cb65ae4f014e2fe17f2e8c70 |
macOS 64 ビット (ARM64, Apple M1 silicon) |
google-cloud-cli-darwin-arm.tar.gz | 53.7 MB | f7b7c1bc1ed540718a953a29d196205d881dd2c1e758bfc2489ea5e83204a3b8 |
macOS 32 ビット (x86) |
google-cloud-cli-darwin-x86.tar.gz | 52.4 MB | b0dfdf14a284af3721936ea79a1d66d4189e94bd3d1bbdb31c3d963fcf1893c6 |
./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.12 です。デフォルトでは、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 を無料で試す