ITADN

[BUG] CLI tool symlink disappears from ~/.local/bin/ after reboot (Claude Code)

#581OpenGiveme10minutes 创建于 2026-06-14
bug
G
Giveme10minutescommented
### New Issue Checklist - [x] I updated Pearcleaner to the latest version and still observe the issue - [x] I searched for [existing GitHub issues](https://github.com/alienator88/pearcleaner/issues) - [x] OS Version: 27.0 - [x] Pearcleaner Version: 5.4.3 --- ### Issue: CLI tool symlink disappears from `~/.local/bin/` after reboot (Claude Code) **Confirmed facts:** - Installed Claude Code via `curl -fsSL https://claude.ai/install.sh | bash` - Symlink `~/.local/bin/claude -> ~/.local/share/claude/versions/2.1.177` was present right after installation - After rebooting, the symlink was gone — the `claude` command became unavailable - The binary `~/.local/share/claude/versions/2.1.177` (225MB, Mach-O arm64) still exists - Other symlinks in the same directory (`openclaw`, `claudeline`) were **not** removed — only `claude` was - Prior to this issue, a Claude Code update was interrupted mid-installation **Suspected cause (uncertain; no logs to confirm):** - Pearcleaner Sentinel is running persistently in the background (`settings.sentinel.enable = true`, process `PearcleanerSentinel` started at boot) - Claude Code is installed via a shell script (no .app bundle, no standard installation record). Its symlink may be misidentified as an orphaned leftover by Sentinel - However, there are no logs or audit records proving Sentinel deleted the symlink **Request:** - Add an exclude-list feature for Sentinel, or make it ignore symlinks pointing to existing valid binaries - Any suggestions on how to trace what deleted a file on macOS? #### Steps: 1. Install Claude Code: `curl -fsSL https://claude.ai/install.sh | bash` 2. Confirm symlink exists: `ls -la ~/.local/bin/claude` 3. Reboot the system 4. After reboot, run `ls -la ~/.local/bin/claude` — the symlink is gone 5. The binary is still at `~/.local/share/claude/versions/2.1.177` — only the symlink was removed #### Screenshots: N/A #### Debug Console <pre>No logs captured. CMD+D debug console shows no relevant output.</pre> #### Console Logs <pre> log stream --predicate 'subsystem == "com.alienator88.Pearcleaner"' returns no output (both with and without --debug flag). Sentinel's launch agent (com.alienator88.PearcleanerSentinel.plist) does not configure StdoutPath/StderrPath, and the binary strings contain no os_log-related code — Sentinel appears to not emit any logs. UndoHistory.json has no record of the deleted symlink. macOS unified log shows no events matching "claude", "symlink", or file-deletion patterns. Therefore, it's impossible to confirm from logs which process deleted the symlink. </pre>
0 条评论