UPDATE (Problem ist gelöst):

UPDATE (Problem ist gelöst):

Ich habe ein Problem, bei dem meine Ubuntu-Bash nach einer SSH-Anmeldung einfriertes sei denn, ich drücke sofort Strg+C. Es scheint, dass im Hintergrund etwas geladen wird. Dieses Problem trat auf, nachdem ich zahlreiche Bash-Meldungen wie diese erhalten hatte:

watchpack error (watcher): error: enospc: system limit for number of file watchers reached, watch ....

die ausgelöst wurden, als ich versuchte, eine Angular-Anwendung mit IntelliJ Remote Development zu starten. Wie kann ich dieses Problem lösen und das Einfrieren meiner Bash nach der SSH-Anmeldung verhindern?

UPDATE (Problem ist gelöst):

Ich bin auf die Grundursache für das Einfrieren des Terminals in meinem Fall gestoßen. Das Problem hing mit dem Befehl zusammen, der ng completionfür meine Angular-Anwendung verwendet wurde. Überraschenderweise wurde dieser Befehl automatisch an meine ~/.bashrcDatei angehängt, was zum Einfrieren führte. Hier ist die spezifische Zeile, die das Problem verursacht hat:

# Load Angular CLI autocompletion.
source <(ng completion script)

Um das Problem zu lösen, habe ich einfach die problematische Zeile aus der ~/.bashrcDatei entfernt.

Ich bin mir nicht sicher, wie diese Zeile in meine Datei gelangt ist ~/.bashrc, aber ich vermute, dass es mit meiner Nutzung von IntelliJ Remote Development zusammenhängt. Dies ist jedoch nur eine Spekulation und bedarf weiterer Untersuchung.

Wenn Sie auf ein ähnliches Problem stoßen, empfehle ich die folgenden Schritte, um die Terminalfunktionalität wiederherzustellen:

  1. Direkt nach der Eingabe der SSH-Anmeldeinformationen drücke ich mehrmals Strg+C. Dadurch wird die Ausführung der problematischen Zeile in meiner ~/.bashrcDatei verhindert und das Terminal wird in meinem Fall nutzbar.
  2. Sobald das Terminal zugänglich ist, überprüfen Sie die ~/.bashrcDatei auf unerwartete oder problematische Zeilen, insbesondere solche, die kürzlich hinzugefügt wurden. In meinem Fall ng completionwar die betreffende Zeile der Übeltäter.
  3. Entfernen oder kommentieren Sie alle verdächtigen Zeilen in der ~/.bashrcDatei, die das Einfrieren verursachen könnten.
  4. Speichern Sie die Änderungen ~/.bashrcund starten Sie das Terminal neu oder laden Sie die Datei erneut herunter, um die Änderungen anzuwenden.

Alternativ können Sie auch die komplette Datei temporär umbenennen um zu prüfen, ob das Problem hierdurch entsteht: mit cd ~und dannmv .bashrc newfilename

Durch Befolgen dieser Schritte konnte ich (1.) mein Terminal wieder verwenden und (2.) das Einfrierproblem beheben und die normale Funktionalität meines Terminals wiederherstellen.

Lektion für die Zukunft: Es ist immer gut, ein zweites Benutzerkonto zu haben, das für die SSH-Anmeldung verwendet werden kann.

verwandte Informationen