Häufige Installationsprobleme

Linux-Berechtigungsprobleme

Bei der Installation von Claude Code mit npm können Berechtigungsfehler auftreten, wenn Ihr globales npm-Präfix nicht benutzerschreibbar ist (z.B. /usr oder /usr/local).

Empfohlene Lösung: Erstellen Sie ein benutzerschreibbares npm-Präfix

Der sicherste Ansatz ist, npm so zu konfigurieren, dass es ein Verzeichnis in Ihrem Home-Ordner verwendet:

# Speichern Sie zunächst eine Liste Ihrer vorhandenen globalen Pakete für die spätere Migration
npm list -g --depth=0 > ~/npm-global-packages.txt

# Erstellen Sie ein Verzeichnis für Ihre globalen Pakete
mkdir -p ~/.npm-global

# Konfigurieren Sie npm, um den neuen Verzeichnispfad zu verwenden
npm config set prefix ~/.npm-global

# Hinweis: Ersetzen Sie ~/.bashrc durch ~/.zshrc, ~/.profile oder eine andere geeignete Datei für Ihre Shell
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc

# Wenden Sie die neue PATH-Einstellung an
source ~/.bashrc

# Installieren Sie nun Claude Code am neuen Ort
npm install -g @anthropic-ai/claude-code

# Optional: Installieren Sie Ihre vorherigen globalen Pakete am neuen Ort neu
# Schauen Sie in ~/npm-global-packages.txt und installieren Sie Pakete, die Sie behalten möchten

Diese Lösung wird empfohlen, weil sie:

  • Vermeidet die Änderung von Systemverzeichnis-Berechtigungen
  • Erstellt einen sauberen, dedizierten Ort für Ihre globalen npm-Pakete
  • Folgt bewährten Sicherheitspraktiken

Systemwiederherstellung: Wenn Sie Befehle ausgeführt haben, die Eigentümerschaft und Berechtigungen von Systemdateien oder ähnlichem ändern

Wenn Sie bereits einen Befehl ausgeführt haben, der Systemverzeichnis-Berechtigungen geändert hat (wie sudo chown -R $USER:$(id -gn) /usr && sudo chmod -R u+w /usr) und Ihr System jetzt defekt ist (zum Beispiel, wenn Sie sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set sehen), müssen Sie Wiederherstellungsschritte durchführen.

Ubuntu/Debian-Wiederherstellungsmethode:
  1. Halten Sie beim Neustart SHIFT gedrückt, um auf das GRUB-Menü zuzugreifen

  2. Wählen Sie “Erweiterte Optionen für Ubuntu/Debian”

  3. Wählen Sie die Wiederherstellungsmodus-Option

  4. Wählen Sie “Drop to root shell prompt”

  5. Mounten Sie das Dateisystem als schreibbar neu:

    mount -o remount,rw /
    
  6. Reparieren Sie die Berechtigungen:

    # Root-Eigentümerschaft wiederherstellen
    chown -R root:root /usr
    chmod -R 755 /usr
    
    # Stellen Sie sicher, dass /usr/local Ihrem Benutzer für npm-Pakete gehört
    chown -R YOUR_USERNAME:YOUR_USERNAME /usr/local
    
    # Setzen Sie das setuid-Bit für kritische Binärdateien
    chmod u+s /usr/bin/sudo
    chmod 4755 /usr/bin/sudo
    chmod u+s /usr/bin/su
    chmod u+s /usr/bin/passwd
    chmod u+s /usr/bin/newgrp
    chmod u+s /usr/bin/gpasswd
    chmod u+s /usr/bin/chsh
    chmod u+s /usr/bin/chfn
    
    # Sudo-Konfiguration reparieren
    chown root:root /usr/libexec/sudo/sudoers.so
    chmod 4755 /usr/libexec/sudo/sudoers.so
    chown root:root /etc/sudo.conf
    chmod 644 /etc/sudo.conf
    
  7. Betroffene Pakete neu installieren (optional, aber empfohlen):

    # Liste der installierten Pakete speichern
    dpkg --get-selections > /tmp/installed_packages.txt
    
    # Sie neu installieren
    awk '{print $1}' /tmp/installed_packages.txt | xargs -r apt-get install --reinstall -y
    
  8. Neustart:

    reboot
    
Alternative Live-USB-Wiederherstellungsmethode:

Wenn der Wiederherstellungsmodus nicht funktioniert, können Sie einen Live-USB verwenden:

  1. Booten Sie von einem Live-USB (Ubuntu, Debian oder jede Linux-Distribution)

  2. Finden Sie Ihre Systempartition:

    lsblk
    
  3. Mounten Sie Ihre Systempartition:

    sudo mount /dev/sdXY /mnt  # ersetzen Sie sdXY durch Ihre tatsächliche Systempartition
    
  4. Wenn Sie eine separate Boot-Partition haben, mounten Sie sie auch:

    sudo mount /dev/sdXZ /mnt/boot  # falls erforderlich
    
  5. Chroot in Ihr System:

    # Für Ubuntu/Debian:
    sudo chroot /mnt
    
    # Für Arch-basierte Systeme:
    sudo arch-chroot /mnt
    
  6. Befolgen Sie die Schritte 6-8 aus der Ubuntu/Debian-Wiederherstellungsmethode oben

Nach der Wiederherstellung Ihres Systems befolgen Sie die oben empfohlene Lösung, um ein benutzerschreibbares npm-Präfix einzurichten.

Auto-Updater-Probleme

Wenn Claude Code nicht automatisch aktualisiert werden kann, kann dies an Berechtigungsproblemen mit Ihrem globalen npm-Präfix-Verzeichnis liegen. Befolgen Sie die empfohlene Lösung oben, um dies zu beheben.

Wenn Sie stattdessen den Auto-Updater deaktivieren möchten, können Sie die Umgebungsvariable DISABLE_AUTOUPDATER auf 1 setzen

Berechtigungen und Authentifizierung

Wiederholte Berechtigungsaufforderungen

Wenn Sie sich dabei wiederfinden, dieselben Befehle wiederholt zu genehmigen, können Sie bestimmte Tools so einstellen, dass sie ohne Genehmigung ausgeführt werden, indem Sie den Befehl /permissions verwenden. Siehe Berechtigungsdokumentation.

Authentifizierungsprobleme

Wenn Sie Authentifizierungsprobleme haben:

  1. Führen Sie /logout aus, um sich vollständig abzumelden
  2. Schließen Sie Claude Code
  3. Starten Sie mit claude neu und schließen Sie den Authentifizierungsprozess erneut ab

Wenn Probleme bestehen bleiben, versuchen Sie:

rm -rf ~/.config/claude-code/auth.json
claude

Dies entfernt Ihre gespeicherten Authentifizierungsinformationen und erzwingt eine saubere Anmeldung.

Leistung und Stabilität

Hohe CPU- oder Speichernutzung

Claude Code ist darauf ausgelegt, mit den meisten Entwicklungsumgebungen zu funktionieren, kann aber erhebliche Ressourcen verbrauchen, wenn große Codebasen verarbeitet werden. Wenn Sie Leistungsprobleme haben:

  1. Verwenden Sie /compact regelmäßig, um die Kontextgröße zu reduzieren
  2. Schließen und starten Sie Claude Code zwischen größeren Aufgaben neu
  3. Erwägen Sie, große Build-Verzeichnisse zu Ihrer .gitignore-Datei hinzuzufügen

Befehl hängt oder friert ein

Wenn Claude Code nicht reagiert:

  1. Drücken Sie Strg+C, um zu versuchen, den aktuellen Vorgang abzubrechen
  2. Wenn es nicht reagiert, müssen Sie möglicherweise das Terminal schließen und neu starten

ESC-Taste funktioniert nicht in JetBrains (IntelliJ, PyCharm, etc.) Terminals

Wenn Sie Claude Code in JetBrains-Terminals verwenden und die ESC-Taste den Agent nicht wie erwartet unterbricht, liegt dies wahrscheinlich an einem Tastenkombinations-Konflikt mit JetBrains’ Standard-Shortcuts.

Um dieses Problem zu beheben:

  1. Gehen Sie zu Einstellungen → Tools → Terminal
  2. Klicken Sie auf den Hyperlink “Configure terminal keybindings” neben “Override IDE Shortcuts”
  3. Scrollen Sie in den Terminal-Tastenkombinationen nach unten zu “Switch focus to Editor” und löschen Sie diese Verknüpfung

Dies ermöglicht es der ESC-Taste, ordnungsgemäß für das Abbrechen von Claude Code-Operationen zu funktionieren, anstatt von PyCharms “Switch focus to Editor”-Aktion erfasst zu werden.

Weitere Hilfe erhalten

Wenn Sie Probleme haben, die hier nicht behandelt werden:

  1. Verwenden Sie den Befehl /bug innerhalb von Claude Code, um Probleme direkt an Anthropic zu melden
  2. Überprüfen Sie das GitHub-Repository auf bekannte Probleme
  3. Führen Sie /doctor aus, um die Gesundheit Ihrer Claude Code-Installation zu überprüfen