FreeBSDにgsutil(google-cloud-sdk)をインストール
CentOSからFreeBSDに変更して、Google Cloud Storageにアクセスするためにgsutilをインストールしようとしているときの覚書。
環境: FreeBSD 14.1
pkg経由で「google-cloud-sdk」をインストールすればgsutilが含まれている。
# pkg search google-cloud
# pkg install google-cloud-sdk
(bashrc) source /usr/local/google-cloud-sdk/completion.bash.inc(zshrc) source /usr/local/google-cloud-sdk/completion.zsh.inc
google-cloud-sdk-471.0.0がインストールされた。
bashrcに追記しろと表示されるが、bashrcは作ってないのでbash_profileに追記する。
# less .bash_profile
source /usr/local/google-cloud-sdk/completion.bash.inc
読み込んでgsutilを実行してみる。
# source .bash_profile
# gsutil --version
エラー
Traceback (most recent call last):File "/usr/local/bin/../google-cloud-sdk/bin/bootstrapping/gsutil.py", line 15, in <module>import bootstrappingFile "/usr/local/google-cloud-sdk/bin/bootstrapping/bootstrapping.py", line 45, in <module>from googlecloudsdk.core import configFile "/usr/local/google-cloud-sdk/lib/googlecloudsdk/core/config.py", line 25, in <module>import sqlite3File "/usr/local/lib/python3.11/sqlite3/__init__.py", line 57, in <module>from sqlite3.dbapi2 import *File "/usr/local/lib/python3.11/sqlite3/dbapi2.py", line 27, in <module>from _sqlite3 import *ModuleNotFoundError: No module named '_sqlite3'
python3.11のライブラリを参照しようとして失敗している。
python3.9あるのだがそっちを参照してほしい。
前の記事: FreeBSDの環境にPython 3.11をインストール
Google先生なら設定できるはずと思い、メインのgcloudを実行してみる。
# gcloud
ERROR: gcloud failed to load. This usually indicates corruption in your gcloud installation or problems with your Python interpreter.Please verify that the following is the path to a working Python 3.8-3.12 executable:/usr/local/bin/python3.11If it is not, please set the CLOUDSDK_PYTHON environment variable to point to a working Python executable.If you are still experiencing problems, please reinstall the Google Cloud CLI using the instructions here:https://cloud.google.com/sdk/docs/install
CLOUDSDK_PYTHONという環境変数で設定できるらしい。
参考: gcloud topic startup | Google Cloud CLI Documentation
bash_profileに追記する。
# less .bash_profile
source /usr/local/google-cloud-sdk/completion.bash.incexport CLOUDSDK_PYTHON=python3.9
読み込んで環境変数を確認してgsutilを実行する。
# source .bash_profile
# printenv
# gsutil --version
無事通った。
アップデートしろと出るので実行する。
# gcloud components update
確認
# gcloud --version
Google Cloud SDK 482.0.0bq 2.1.6bundled-python3-unix 3.11.8core 2024.06.24gcloud-crc32c 1.0.0gsutil 5.30
公式サイトを参考にgcloud CLIを初期化する。
参考: クイックスタート: Google Cloud CLI をインストールする | Google Cloud CLI Documentation
# gcloud init --console-only
Googleアカウントを設定する。
バケットの一覧
# gsutil ls
あとはバックアップ用のバッチ処理を実行してみて確認する。