面白い事象に出会ったのでメモしておく。自分はVS Codeから、Proxmox上のLinux仮想マシンにSSH接続して日々の開発を行なっている。
Claude Codeの拡張機能を使おうとしたらうまく起動しなかったのである。よくよく調べるとCPUアーキテクチャによるものとわかった。
環境
- 手元のVS CodeからRemote SSHでLinux VMに接続
- 接続先:Proxmox上のVM(systemd-detect-virt → kvm)、Ubuntu系、カーネル 6.8.0-146-generic
- CPU:model name : Common KVM processor(ProxmoxのCPU種別が汎用のまま)、/proc/cpuinfo に avx2 なし
- Claude Code VS Code拡張 2.1.295(linux-x64、同梱ネイティブバイナリを使用)
接続先ホストでは未ログイン(ログに No authentication found)
症状
拡張のログイン画面で「Claude.ai Subscription」を押すと、60秒後に以下のエラー
Subprocess initialization did not complete within 60000ms — check authentication and network connectivity
拡張の出力ログでは Spawning Claude with SDK query function ... の後、バイナリからの出力が一行も返らないままタイムアウト
切り分けの流れ
- エラー文どおり認証・ネットワークを疑う
getent hosts api.anthropic.com → IPv6アドレスで解決 - curl https://api.anthropic.com → 404(到達はできている)
- プロキシ環境変数なし
- IPv6経路の不具合を疑う
- curl -6 / curl -4 ともに約0.05秒で404 → 通信は無関係
- バイナリ単体で確認
timeout 20 .../native-binary/claude --version → exit=124(20秒で応答なし)
通信も認証も使わないはずの --version すら返らない → 原因はバイナリの起動そのもの
straceで確認 - 最後のシステムコールは getcwd。その後20秒間システムコールが一切なく、SIGTERMで終了
- バイナリのサイズは約256MBで、破損の線は薄い
- CPUまわりを確認
no avx2、Common KVM processor
top で、拡張が起動した claude auth status --json が3プロセスともCPU 100%で12分以上張り付いていた
原因(推定)
- ProxmoxのVM CPU種別が汎用(kvm64 / x86-64-v2系)のため、ゲストからAVX2が見えない
- claude バイナリ(Bun埋め込みの単一実行ファイル)がこの環境で正常に進めず、CPUを使い切ったまま空回りしていた
- 拡張側からは「60秒以内に初期化が終わらない」としか見えず、エラー文が認証・ネットワークを示唆していたため遠回りした
- 注:AVX2非対応環境でハングするという公式の明記は未確認。状況証拠からの推定
対処
- 空回りしている残存プロセスを停止:pkill -f 'native-binary/claude'
- Proxmoxで該当VMの「ハードウェア」→「プロセッサ」→「種別」を host(ライブマイグレーションを考慮するなら x86-64-v3)に変更
VMをシャットダウン→起動(ゲスト内の再起動では反映されない) - 確認:grep -o -w -m1 avx2 /proc/cpuinfo とか
エラーメッセージが示す原因(認証・ネットワーク)と真因がまったく別だった
straceで確認できたのよかった
同じテンプレートから作ったVMは、すべてCPU種別が汎用のままの可能性がある

