Windows、MacでGemini CLIを動かす記事はたくさんあります。
そしてubuntuでもWindows・Macと同じ方法で起動できるという記事が多いですが、
状況によっては起動しません。結構みんないい加減な記事書いてるのでご注意を。
本記事ではLinuxサーバー(Ubuntu Server)にリモートで入ってGemini CLIを動かす際のトラブルシューティングにフォーカスして解説します。(個人的な備忘録も兼ねて)
Google Gemini CLIとは?
Google Gemini CLIは、Gemini(旧Bard)をターミナル上で操作できるコマンドラインツールです。
APIキー不要で、Googleアカウントによる認証だけで利用でき、ちょっとした質問からコード生成まで幅広く使える便利なツールです。
Ubuntu Serverでの前提環境構築
Ubuntu ServerにGemini CLIを導入するには、以下のようにNode.jsとnpmのインストールが必要です。
# Node.jsとnpmのインストール
sudo apt update
sudo apt install -y nodejs npm
バージョン確認もしておきましょう。nodeのバージョンは18以上が必要なようです。
node -v
npm -v
続いて、Gemini CLIのインストールは以下のコマンドです。
npm install -g @google/gemini-cli
さて、このコマンド実行を含め、以降の作業で3つのエラーが起きる可能性があります。
それを一つ一つ解決していきます。
Ubuntu Serverで私が経験した3つのトラブルと解決方法
Ubuntu ServerでGemini CLIを動かす際、次の3つの問題が発生しがちです。
特に、Windowsなどからコンソール経由でUbuntu Serverにリモートで入って作業する時に起きる可能性が高いです。
IPv6が有効でnpmのサーバーにアクセスできない
npm install -g @google/gemini-cli
上記コマンドを実行した際に、プログレスバーが動かずに、数分して以下のように
npm ERR! ….から始まるメッセージが数行表示されて、インストールできないエラーが発生します。
npm ERR! FetchError: request to https://registry.npmjs.org/@google%2fgemini-cli failed,
npm ERR! ….
npm ERR! ….
これは、ipv6でnpmjsサーバーにアクセスしたが、断られたというエラーです。
以下のコマンドでipv4のhostを追加してあげると解決できます。
echo 104.16.20.35 registry.npmjs.org | sudo tee -a /etc/hosts
これで、npm installコマンドを実行すれば、プログレスバーがすぐに動き始めてインストールが完了します。
認証画面が開かない
Gemini CLIでは起動時に認証が必要になります。リモート環境ではこの認証画面が開かないことが多いかと思います。
ubuntuでもデスクトップ環境がインストールされており、デスクトップ環境でインストールを実行している場合は、認証画面が開く可能性があります。(試していないので確かではないです。)
しかし、サーバーには基本的にデスクトップ環境が入ってないことが多い上に、
Windowsなどからリモートでアクセスするとそもそも”デスクトップ画面が無い”という事になります。
そもそも画面がないので認証用のウインドウが開けない → 何も起きない → 認証できない
という状況になります。
解決方法は以下のとおりです。
gemini cliをデバッグモードで起動
gemini –debug
すると、まず配色などのテーマを選択し、次に以下のようなログイン方法の選択が出ます。
ここで「1.Login with Google」を選択します。
すると様々なメッセージとともに以下のように”URLにアクセスしてください”というメッセージとURLが表示されます。
WindowsなどからブラウザにURLを貼り付けて開き、googleアカウントを選択すると、
認証コードが表示されますので、これをコピーします。
上記画像の状態で一度エンターを押すと”Enter the authorization code:”と表示されるので、コピーした認証コードを貼り付けエンターを押すと認証が完了します。
しかし、ここで認証エラーとなる場合がありますので、次のトラブルシューティングも合わせて確認してください。
IPv6の影響で認証コードが拒否される
2.の認証用のURLが表示された続きで以下のようなエラーが表示されている場合、認証できません。

これは、1のエラーと同様ipv6でアクセスしていることが原因で起こるエラーです。
ですので、一時的にipv6を無効化します。
以下のコマンドを1つずつ実行してください。
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=1
上記コマンドでipv6を無効化したら、2の認証作業をもう一度行ってみてください。
認証できるはずです。
私の場合、なぜか1回では認証できず、2回同じ認証作業をしたら認証できました。
認証できたら以下のコマンドで起動します。
gemini
正常に起動すれば以下のようになります。
この方法で起動できた場合、ipv6を再度有効にするとgeminiが起動できません。
ipv6を恒久的に無効にするか、優先順位を変更するなど各自の環境に合わせて変更してください。
以上、Ubuntu ServerにGemini CLIをインストールする際のトラブルシューティング解説でした。