在国内主机上通过 Google Cloud CLI 以及 gsutil 工具获取 GCP 存储桶数据
本文原来拟定的标题为:《墙,墙,又是墙!》,以显示我的愤怒。
故事背景是由于 Google Workspace 放弃了白嫖用户,我转付费了其中若干套,放弃了若干套。放弃的订阅可以导出全部数据到 GCP 存储桶。
大概是这样的:
在 gsutil 工具主页上看到安装方式的文档链接,文档首选通过自定义 repo 的方式安装:
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-el8-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=0
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOM
sudo dnf install google-cloud-cli
经测试,由于众所周知的原因,这个方案在国内主机上是行不通的。
知天朝者,Google 也。他们还提供了通过归档包的方式进行安装的方案。目前可以下载到的最新的版本归档是:google-cloud-sdk-377.0.0-linux-x86_64.tar.gz。
这里要感谢仁慈的 TG,没有赶尽杀绝,留了 dl.google.com 活口:
# wget -c https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-377.0.0-linux-x86_64.tar.gz
# tar xzf google-cloud-sdk-377.0.0-linux-x86_64.tar.gz
# cd google-cloud-sdk
# ./install.sh
安装完成后提示:
To update your SDK installation to the latest version [381.0.0], run:
$ gcloud components update
作为精神强迫症患者,必须来一波:
# gcloud components update
到这里身心还较为愉悦,尝试列出 GCP 存储桶的文件:
# gsutil ls gs://takeout-export-xxxx
我就猜到会报错:
ServiceException: 401 Anonymous caller does not have storage.objects.list access to the Google Cloud Storage bucket.