本頁面說明如何安裝及設定 gsutil,這項工具可讓您透過指令列存取 Cloud Storage。
只要安裝 gsutil,即可立即讀取及/或寫入公開資料。如果通過 Cloud Storage 服務驗證,您就能讀取及/或寫入他人與您共用的受保護資料。啟用計費功能則讓您建立及管理自己的值區。
系統需求
警告: 某些 Linux 發行版會預先安裝另一項由 GrandStream BudgeTone 提供的 gsutil 工具。如果您執行這項指令,而不是執行 Cloud Storage gsutil,則畫面可能會出現類似以下的錯誤訊息:"Choose one of -b, -d, -e, or -r to do something"
。如果發生這種情況,您可以將 Cloud Storage 版本的 gsutil 移至 PATH
環境變數的前端,或是在執行 Cloud Storage gsutil 時指定完整路徑 (例如 /home/users/joan/gsutil/gsutil ls
)。 安裝 gsutil Google Cloud SDK 包含官方支援的 gsutil 安裝及更新方法。
安裝 Google Cloud SDK 內含的 gsutil:
按照適用於您作業系統的操作說明,安裝 Google Cloud SDK 內含的 gsutil:
在命令提示字元視窗中輸入以下內容:curl https://sdk.cloud.google.com | bash
重新啟動殼層:exec -l $SHELL
執行 gcloud init
以初始化 gcloud
環境:gcloud init
套件格式的 Cloud SDK 可安裝於 Debian 和 Ubuntu 系統。這個套件只包含 gcloud
、gcloud alpha
、gcloud beta
、gsutil
和 bq
指令,不包含 kubectl
或使用 gcloud
指令部署應用程式所需的 App Engine 擴充功能。如需這些元件,您必須按照本節後段的說明 另行安裝。
在所有尚未終止服務的官方版 Ubuntu 與 Wheezy 日後的 Debian 穩定版本 上,您可以透過 Debian/Ubuntu 套件安裝 Cloud SDK。
注意: 如果您在 Google Compute Engine 上使用執行個體,則系統已預設安裝 Cloud SDK。但您仍然可以按照下面的指示手動安裝 Cloud SDK。
新增 Cloud SDK 發布作業 URI 做為套件來源: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 附註: 請確認您已安裝 apt-transport-https :apt-get install apt-transport-https ca-certificates 疑難排解提示: 如果您的發行版不支援簽署選項,請改為執行這個指令,
echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
疑難排解提示: 請確認 Cloud SDK 存放區中沒有重複項目。
匯入 Google Cloud 公開金鑰: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 -
更新並安裝 Cloud SDK:sudo apt-get update && sudo apt-get install google-cloud-sdk 附註: 如需停用提示或模擬測試等其他 apt-get
選項的資訊,請參閱 apt-get
手冊頁面 。
您也可以選擇安裝下列任一附加元件 :
google-cloud-sdk-app-engine-python
google-cloud-sdk-app-engine-python-extras
google-cloud-sdk-app-engine-java
google-cloud-sdk-app-engine-go
google-cloud-sdk-datalab
google-cloud-sdk-datastore-emulator
google-cloud-sdk-pubsub-emulator
google-cloud-sdk-cbt
google-cloud-sdk-cloud-build-local
google-cloud-sdk-bigtable-emulator
kubectl
例如,您可以按照以下方式安裝 google-cloud-sdk-app-engine-java
元件:
sudo apt-get install google-cloud-sdk-app-engine-java
執行 gcloud init
即可開始使用:gcloud init
在命令提示字元視窗中輸入以下內容:curl https://sdk.cloud.google.com | bash
重新啟動殼層:exec -l $SHELL
執行 gcloud init
以初始化 gcloud
環境:gcloud init
下載 Cloud SDK 安裝程式 。
或者,開啟 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 簽署。
Cloud SDK 需要使用 Python 2.7.9 以上版本的 Python 2。安裝程式會預設安裝所有必要的依附元件,包含所需的 Python 版本。如果您已經安裝 Python 2.x.y,而且想要使用現有的安裝版本,則可以取消勾選「安裝隨附 Python」 的選項。
附註:自 Cloud SDK 206.0.0 版本起,gcloud
CLI 將實驗性支援使用 Python 3.4+ 解譯器執行作業 (執行
gcloud topic startup
可取得這項支援服務排除的項目以及更多關於設定 Python 解譯器的資訊)。其他所有的 Cloud SDK 工具仍須搭配 Python 2.7 解譯器。
安裝完成後,請接受下列選項:
啟動 Cloud SDK Shell
執行 gcloud init
安裝程式會開啟終端機視窗並執行 gcloud init
指令。
預設的安裝不包括使用 gcloud
指令部署應用程式所需的 App Engine 擴充功能。您可利用 Cloud SDK 元件管理員 來安裝這些元件。
使用 components update
指令執行更新:gcloud components update
。
如要瞭解如何使用 gsutil,請參閱快速入門導覽課程:使用 gsutil 工具 一文來進行練習,或是執行 gsutil help
。
替代安裝方法
有幾種方法能夠以獨立產品的形式安裝 gsutil。如果不想要使用 Cloud SDK 隨附的其他任何元件,或者是透過 PyPI 來管理套件,那麼您可能會想要採用下列其中一種方法。
如果您將 gsutil 做為獨立產品來進行安裝,則必須滿足下列這項額外的系統需求:由於 gsutil 目前無法在 Python 3.x 上執行,因此您必須在電腦上安裝 Python 2.7.x 版。根據預設,大多數的 Linux 和 macOS 版本均已安裝 Python。然而,Windows 系統上並沒有預先安裝 Python,因此您必須先安裝 Python,才能在 Windows 上執行 gsutil。
展開您需要的方法來取得操作說明。
從 tar 或 zip 封存檔案安裝
Linux 和 macOS
您可以將 gsutil 下載為 gsutil.tar.gz 或 gsutil.zip 檔案。兩種檔案格式皆可使用,不過下列的安裝說明是以 gsutil.tar.gz
為例。
無論您下載哪一種格式,gsutil 均會隨附在單一封存檔案中。請將封存檔案儲存在方便存取的位置。
將封存檔案解壓縮。
開啟殼層視窗並將目錄變更為您下載 gsutil 後存放的位置,然後執行下列指令:
tar xfz gsutil.tar.gz -C $HOME
這項指令會在主目錄安裝 gsutil,並建立名為 gsutil 的目錄。gsutil 目錄應包含 gsutil 工具、gslib 目錄和 third_party 目錄。third_party 目錄內具有數個目錄,其中包含 boto 程式庫 在內。
如果您想在其他位置安裝 gsutil,請將 $HOME
更改成電腦中的其他位置。
將 gsutil 新增至 PATH 環境變數。
將下面這行指令新增至 Linux 的 ~/.bashrc 檔案或 macOS 的 ~/.bash_profile:
export PATH=${PATH}:$HOME/gsutil
如果您沒有將 gsutil 安裝在主目錄中,請務必變更 $HOME/gsutil
,以便與 gsutil 的位置相符。
重新啟動殼層或終端機程式。
在某些情況下,您可能必須重新啟動殼層或終端機程式,才會讓 PATH 環境變數生效。
您現在可以開始使用 gsutil 了。如要查看 gsutil 指令的清單,請在命令提示字元視窗中輸入 gsutil
。
Windows
下載並安裝 Python 。安裝適用於 gsutil 的 Python 版本 (請參閱上述的系統需求 )。我們建議您安裝 32 位元版本的 Python,並且安裝在預設位置 (例如 C:\Python27
)
下載 gsutil 。gsutil 會隨附在名為 gsutil.zip 的單一封存檔案中。請將封存檔案儲存在方便存取的位置 (例如 C:\
)。
將封存檔案解壓縮。建議您將封存檔案解壓縮至根目錄,這樣就可以在根目錄建立名為 gsutil
的目錄 (例如 C:\gsutil
),其中會包含 gsutil 工具及需要的所有程式庫與其他檔案。
啟動命令提示字元視窗並執行 gsutil,以取得 gsutil 指令的清單。您必須執行 Python 解譯器,才能在 Windows 上執行 gsutil 指令。舉例來說,您必須在命令提示字元視窗中輸入 python gsutil
,才能查看 gsutil 指令清單。此外,如果您在 C:\gsutil
目錄以外的位置執行 gsutil,則必須明確提供 gsutil 執行檔的路徑。例如,您必須在命令提示字元視窗中輸入 python C:\gsutil\gsutil
,才能執行位於 C:\Users\Admin\MyDocuments
目錄中的 gsutil。
您現在可以開始使用 gsutil 了。
輕鬆使用 gsutil
您可以建立包含下列內容的 gsutil.cmd
指令檔案 (假設您已按照上述指示安裝 Python 和 gsutil),如此便可更加輕鬆地執行 gsutil:
cmd.exe /C C:\Python27\python.exe "C:\gsutil\gsutil" %*"
然後,如果您將 gsutil.cmd
的目錄位置新增至系統路徑,可以從任何位置執行 gsutil command
,其中 command
是有效的 gsutil 指令。
更新獨立式 gsutil
做為獨立產品來使用的 gsutil 內建更新指令,可用來檢查 gsutil 的最新版本,如果您當下已安裝的並非最新版,亦可替您自動更新。使用 gsutil update
指令 (或使用 Windows 適用的 python gsutil
update
)。
從 Python Package Index (PyPI) 進行安裝
實驗版!
透過 PyPI 安裝 gsutil 是一項頻繁更新且適用於 Cloud Storage 的全新實驗性功能。然而,這代表我們做出的變更可能不具回溯相容性。我們會在功能的實驗階段結束時通知社群成員。
CentOS、RHEL 與 Fedora
安裝必要的系統套件。您需要安裝數種套件,才能從 PyPI 成功安裝 gsutil。您可以透過下列指令來安裝這些套件:
sudo yum install gcc openssl-devel python-devel
python-setuptools libffi-devel
安裝 pip。我們建議您使用 pip 安裝程式,您可以透過下列指令進行安裝:
sudo yum install python-pip
如果您使用的是 CentOS 或 RHEL,但是 yum 找不到 python-pip
套件,那麼您可能尚未啟用 Extra Packages for Enterprise Linux (EPEL) 存放區來源。如要啟用這個來源,請按照操作說明 進行。
從 PyPI 安裝 gsutil。如要從 PyPI 安裝 gsutil,請執行下列指令:
sudo pip install gsutil
您現在可以開始使用 gsutil 了。如要查看 gsutil 指令的清單,請在命令提示字元視窗中輸入 gsutil
。
Debian 與 Ubuntu
安裝必要的系統套件。您需要安裝數種套件,才能從 PyPI 成功安裝 gsutil。您可以透過下列指令來安裝這些套件:
sudo apt-get install gcc python-dev python-setuptools
libffi-dev
安裝 pip。我們建議您使用 pip 安裝程式,您可以透過下列指令進行安裝:
sudo apt-get install python-pip
從 PyPI 安裝 gsutil。如要從 PyPI 安裝 gsutil,請執行下列指令:
sudo pip install gsutil
您現在可以開始使用 gsutil 了。如要查看 gsutil 指令的清單,請在命令提示字元視窗中輸入 gsutil
。
macOS
安裝 pip。我們建議您使用 pip 安裝程式,您可以透過下列指令進行安裝:
sudo easy_install -U pip
從 PyPI 安裝 gsutil。如要從 PyPI 安裝 gsutil,請執行下列指令:
sudo pip install gsutil
您現在可以開始使用 gsutil 了。如要查看 gsutil 指令的清單,請在命令提示字元視窗中輸入 gsutil
。
Windows
安裝 pip。如果您是使用 Python 2.7.9 以上版本,請執行下列指令:
python -m ensurepip
如果不是,請下載可讓您安裝 pip 的 get-pip.py
檔案,然後使用下列指令安裝 pip:
python get-pip.py
從 PyPI 安裝 gsutil。如要從 PyPI 安裝 gsutil,請執行下列指令:
pip install gsutil
您現在可以開始使用 gsutil 了。如要查看 gsutil 指令的清單,請在命令提示字元視窗中輸入 gsutil
。
更新透過 PyPI 安裝的 gsutil
您無法對透過 PyPI 安裝的 gsutil 使用更新指令,請使用 pip 安裝程式更新 gsutil:
sudo pip install -U gsutil
設定憑證以存取受保護的資料
安裝 gsutil 可讓您下載及存取能公開存取的物件,但是您必須設定憑證 (驗證),才能存取受保護的資料或寫入受保護的值區。舉例來說,如果某位使用者建立了 Cloud Storage 帳戶,並且上傳只提供您或其他特定使用者存取的資料,那麼您必須向 Cloud Storage 服務設定憑證,才能存取這類資料。
如果您是安裝 Google Cloud SDK 內含的 gsutil,請按照下列操作說明。如果不是,則請參閱驗證獨立式 gsutil 一節。
附註: 如要查看您是從 Cloud SDK 使用 gsutil,還是將 gsutil 做為獨立產品使用,請執行 gsutil version -l
,並在輸出內容中找出「using cloud sdk」。 驗證 Google Cloud SDK
使用 Google Cloud SDK 中的 gsutil 時,您會透過 OAuth2 對資料存取進行驗證和授權。請注意,如果您已按照上述安裝 Google Cloud SDK 內含的 gsutil 一節的內容進行操作,那麼您可能已經執行下列步驟。如果您先前執行過 gcloud init
,系統會詢問您要重新初始化設定,或是要建立新的設定。
開啟命令提示字元執行個體。
在命令提示字元中執行 gcloud init
。
您會收到下列輸出內容:
Welcome! This command will take you through the configuration of gcloud.
Your current configuration has been set to: [default]
To continue, you must login. Would you like to login (Y/n)?
輸入「Y」並按下 Enter 鍵進行登入。
該指令會輸出一個網址,並嘗試開啟瀏覽器視窗以要求存取您的專案。如果瀏覽器視窗能夠開啟,您就會看到以下的輸出內容:
Your browser has been opened to visit:
https://accounts.google.com/o/oauth2/auth?redirect_uri=http%3A%2F%2F...
前往下一步。
如果您是使用本機電腦工作,但是瀏覽器並未自動載入網址,請搭配 --console-only
標記重新執行 gcloud init
指令:
gcloud init --console-only
如果您使用這項指令,或 Cloud SDK 偵測到瀏覽器無法開啟 (例如您是使用遠端電腦工作),您就會看到以下的輸出內容:
Go to the following link in your browser:
https://accounts.google.com/o/oauth2/auth?redirect_uri=urn%3Aietf%3Awg%3A...
Enter verification code:
開啟瀏覽器並前往提供的網址。
如果畫面出現提示,請在瀏覽器視窗中使用與 Cloud Storage 資料相關聯的 Google 帳戶登入。
授予存取權。
選擇這個設定的預設專案。
設定憑證後,gcloud
指令列工具會提示您選擇這個設定的預設專案,並且會提供可用專案的清單。請從清單中選取專案 ID。
設定這個屬性後,除非您使用 -p
標記覆寫指令或設定 CLOUDSDK_CORE_PROJECT
環境變數,否則像是 gsutil mb
這類需要專案的 gsutil 指令都會使用預設專案 ID。
附註: 如果您已啟用 Compute Engine API,gcloud init
接著可能會要求您設定專案的預設區域和地區。您的選擇並不會影響 gsutil.
的效能 大功告成,您現在可以開始存取受保護的資料。如要查看 gsutil 指令的清單,請在命令提示字元視窗中輸入 gsutil
。
驗證獨立式 gsutil
如果您不是安裝 Google Cloud SDK 內含的 gsutil,請展開下列操作說明來瞭解如何建立憑證。
開啟新的命令提示字元。
(僅限 Windows):切換至您安裝 gsutil 的目錄 (預設目錄為 C:\gsutil
)。
在命令提示字元視窗中執行 gsutil config
(Windows 系統則使用 python gsutil config
)。第一次執行這個指令時,gsutil 會輸出驗證頁面的網址,您可在該頁面驗證 gsutil 以存取 Cloud Storage。gsutil 對話方塊中的訊息會類似以下內容:
This script creates a boto config file at <your_homedir> /.boto
containing your credentials, based on your responses to the following questions.
Please navigate your browser to the following URL: <http://urlto/authorization/dialog>
In your browser you should see a page that requests you to authorize gsutil to access
Cloud Storage on your behalf. After you approve, an authorization code is displayed.
Enter the authorization code:
附註: 如果要讓 gsutil 啟動瀏覽器視窗,請使用 gsutil config -b
(Windows 系統則使用 python
gsutil config -b
)。如果您是透過 SSH 連線至遠端電腦,-b
選項可能無法正常運作。
請複製網址並貼到瀏覽器視窗中。如果畫面出現提示,請在瀏覽器視窗中使用與 Cloud Storage 資料相關聯的 Google 帳戶登入。
按一下 [Allow Access] (允許存取) 按鈕。這樣做即可授權 gsutil 存取 Cloud Storage。
複製下一頁顯示的授權碼,並貼到 gsutil 提示字元視窗中,接著按下 Enter 鍵。提供授權碼後,gsutil 即會輸出下方內容:
Please navigate your browser to the following URL:
https://console.cloud.google.com/
What is your project-id?
在 gsutil 提示字元視窗中輸入專案 ID。如果您已取得專案 ID,可以在這個視窗中輸入。否則,請將網址複製並貼到瀏覽器視窗中,接著登入 Google Cloud Platform Console 來尋找專案 ID (從右上方的下拉式清單中按一下 [Manage all projects] (管理所有專案) 來尋找 ID)。
這個專案即會設為 gsutil 的預設專案。您一次只能針對 gsutil 設定一個專案 ID。您可以透過編輯 boto 設定檔 來變更 gsutil 的專案 ID。
您現在可以開始存取受保護的資料。如要查看 gsutil 指令的清單,請在命令提示字元視窗中輸入 gsutil
。
透過 HMAC 進行驗證
雖然我們建議您使用 OAuth 2.0 來驗證 gsutil,但是您也可以使用 HMAC 金鑰輸入憑證 。如要透過 HMAC 進行驗證,請在 gsutil config
指令中加上 -a
標記:
gsutil config -a
使用這個指令進行的程序與驗證獨立式 gsutil 類似 (請參閱前一節的內容),不同之處在於系統會提示您輸入與 HMAC 金鑰相關聯的「存取 ID」 和「密鑰」。
如果您使用的是 Google Cloud SDK,您也應該使用下列指令停用憑證傳遞功能:
gcloud config set pass_credentials_to_gsutil false