[BUG] claude install hangs indefinitely at 99% CPU with no network activity (2.1.289, Linux x64)
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Summary
The native installer's install step spins at ~100% CPU indefinitely. After 1 hour the process had accumulated 1:04:26 of CPU time and never completed. The process holds no network sockets, so it is not stalled on a download — it appears stuck in a local busy loop.
Environment
Claude Code version: 2.1.289 (native installer, linux-x64)
Install method: curl -fsSL https://claude.ai/install.sh | bash
OS: Ubuntu 22.04
Kernel: Linux 5.15.0-185-generic #195-Ubuntu SMP Fri Jun 19 17:11:50 UTC 2026 x86_64
Arch: x64
RAM: 4 GB (meets the documented 4 GB+ requirement)
Steps to reproduce
Run curl -fsSL https://claude.ai/install.sh | bash on Ubuntu 22.04 x64
The download completes and the installer proceeds to its install step
The process never exits
What Should Happen?
Installation completes within a reasonable time (normally well under a minute) and claude --version works.
Error Messages/Logs
Steps to Reproduce
Actual behavior
The process runs indefinitely at ~99% CPU. Still running after 1 hour:
$ ps -ef | grep claude
syncs 1047528 1047466 99 10:30 pts/1 01:04:26 /home/syncs/.claude/downloads/claude-2.1.289-linux-x64 install
Note that elapsed wall time (~1h) and accumulated CPU time (1:04:26) are nearly identical — the process is saturating a core continuously, not waiting on anything.
Diagnostics
Process state — running on CPU, not blocked on I/O:
$ cat /proc/1047528/status | grep -iE "^State|^Threads|VmRSS"
State: R (running)
VmRSS: 106776 kB
Threads: 4
$ cat /proc/1047528/wchan
0
State: R with an empty wchan confirms the process is actively executing, not sleeping in a kernel call.
Open file descriptors — no sockets at all:
$ ls -l /proc/1047528/fd
lr-x------ 1 syncs syncs 64 Oct 5 11:20 0 -> pipe:[47555979]
lrwx------ 1 syncs syncs 64 Oct 5 11:20 1 -> /dev/pts/1
lrwx------ 1 syncs syncs 64 Oct 5 11:20 2 -> /dev/pts/1
lrwx------ 1 syncs syncs 64 Oct 5 11:20 3 -> anon_inode:[eventpoll]
lrwx------ 1 syncs syncs 64 Oct 5 11:20 4 -> anon_inode:[eventfd]
lr-x------ 1 syncs syncs 64 Oct 5 11:20 5 -> /dev/urandom
lr-x------ 1 syncs syncs 64 Oct 5 11:20 6 -> /proc/1047528/statm
lrwx------ 1 syncs syncs 64 Oct 5 10:30 7 -> /dev/pts/1
There is no socket fd, which rules out a slow or stalled network transfer. fd 6 is an open handle to the process's own /proc/<pid>/statm — possibly a self-monitoring poll loop that never reaches an exit condition.
Resources are not the constraint:
$ free -m
total used free shared buff/cache available
Mem: 3911 824 426 17 2660 2778
Swap: 2047 215 1832
$ df -h ~
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv 29G 24G 3.8G 87% /
2.7 GB available memory, minimal swap usage, 3.8 GB free disk. Not an OOM, thrashing, or disk-full condition.
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
not yeah install
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
Other
Additional Information
_No response_