コンテンツにスキップ

Linux環境でOpenClawのブラウザ制御が起動しない問題の解決方法

Linux環境でブラウザ自動化ツールを動かそうとすると、OS特有のパッケージ管理やセキュリティ制限によって、期待通りに動作しないことがあります。ドキュメント通りに進めたはずなのに、ブラウザが立ち上がらずにエラーで止まってしまうのは、開発者にとって非常にもどかしい瞬間です。

特にUbuntuなどのディストリビューションでは、ブラウザの配布形式が原因でOpenClawからの制御がブロックされることがあります。この記事では、この問題を解決するための最適な設定方法を紹介します。

  • Ubuntu または Linux ディストリビューション
  • OpenClaw のインストール
  • curl および jq (動作確認用)

最も確実で推奨される方法は、snap パッケージではない公式の Google Chrome .deb パッケージを使用することです。

以下のコマンドを実行して、snap の制限を受けない公式パッケージをインストールします。

Terminal window
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome-stable_current_amd64.deb
sudo apt --fix-broken install -y # 依存関係のエラーが発生した場合

~/.openclaw/openclaw.json を開き、executablePath を指定して noSandbox を有効にします。

{
"browser": {
"enabled": true,
"executablePath": "/usr/bin/google-chrome-stable",
"headless": true,
"noSandbox": true
}
}

問題: “Failed to start Chrome CDP on port 18800”

Section titled “問題: “Failed to start Chrome CDP on port 18800””

OpenClaw のブラウザ制御サーバーが、以下のエラーを出して Chrome/Brave/Edge/Chromium の起動に失敗する場合があります。

{"error":"Error: Failed to start Chrome CDP on port 18800 for profile \"openclaw\"."}

原因: Ubuntuなどの多くの Linux ディストリビューションでは、Chromium はデフォルトで snap パッケージ としてインストールされます。snap の AppArmor による制限が、OpenClaw によるブラウザプロセスの起動と監視を妨げます。apt install chromium を実行しても、実際には snap 版へのラッパーがインストールされるため、正しく動作しません。

解決策: Snap 版 Chromium を Attach-Only モードで使用する

Section titled “解決策: Snap 版 Chromium を Attach-Only モードで使用する”

どうしても snap 版 Chromium を使いたい場合は、OpenClaw にブラウザを起動させるのではなく、手動で起動したブラウザに接続(Attach)するように設定します。

  1. 設定の更新:
{
"browser": {
"enabled": true,
"attachOnly": true,
"headless": true,
"noSandbox": true
}
}
  1. Chromium を手動で起動:
Terminal window
chromium-browser --headless --no-sandbox --disable-gpu \
--remote-debugging-port=18800 \
--user-data-dir=$HOME/.openclaw/browser/openclaw/user-data \
about:blank &
  1. (オプション)systemd ユーザーサービスを作成: ブラウザを自動起動させるための設定です。
~/.config/systemd/user/openclaw-browser.service
[Unit]
Description=OpenClaw Browser (Chrome CDP)
After=network.target
[Service]
ExecStart=/snap/bin/chromium --headless --no-sandbox --disable-gpu --remote-debugging-port=18800 --user-data-dir=%h/.openclaw/browser/openclaw/user-data about:blank
Restart=on-failure
RestartSec=5
[Install]
WantedBy=default.target

有効化コマンド: systemctl --user enable --now openclaw-browser.service


問題: “Chrome extension relay is running, but no tab is connected”

Section titled “問題: “Chrome extension relay is running, but no tab is connected””

chrome プロファイル(extension relay)を使用している際、OpenClaw 拡張機能がアクティブなタブに接続されていない場合に発生します。

解決方法:

  • 管理下のブラウザを使用する: openclaw browser start --browser-profile openclaw を実行するか、設定で browser.defaultProfile: "openclaw" を指定します。
  • 拡張機能リレーを使用する: 拡張機能をインストールし、ブラウザでタブを開いた状態で OpenClaw 拡張機能アイコンをクリックして接続してください。

設定完了後、ブラウザが正しく動作しているか確認します。

ステータスの確認:

Terminal window
curl -s http://127.0.0.1:18791/ | jq '{running, pid, chosenBrowser}'

ブラウジングのテスト:

Terminal window
curl -s -X POST http://127.0.0.1:18791/start
curl -s http://127.0.0.1:18791/tabs
オプション説明デフォルト値
browser.enabledブラウザ制御を有効にするtrue
browser.executablePathChromium系ブラウザ(Chrome/Brave/Edge/Chromium)のパス自動検出
browser.headlessGUIなしで実行するfalse
browser.noSandbox--no-sandbox フラグを追加(Linux環境で必要)false
browser.attachOnlyブラウザを起動せず、既存のプロセスに接続するfalse
browser.cdpPortChrome DevTools Protocol のポート18800

不明な点がある場合や、他の環境での設定については AI Setup Assistant を活用してください。

OpenClaw

OpenClaw Expert

まだ解決しませんか?

このページで解決しない場合は、OpenClaw Expertに直接質問してください。