更新(問題已解決):

更新(問題已解決):

我遇到了一個問題:我的 Ubuntu bash 在 SSH 登入後凍結除非我立即按 Ctrl+C。後台似乎正在載入某些內容。這個問題是在我收到大量 bash 訊息後開始出現的,例如:

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

當我嘗試使用 IntelliJ 遠端開發啟動 Angular 應用程式時會觸發該錯誤。如何解決這個問題並防止 SSH 登入後 bash 凍結?

更新(問題已解決):

在我的案例中,我遇到了終端凍結問題的根本原因。該問題與ng completion我的 Angular 應用程式使用的命令有關。令人驚訝的是,該命令會自動附加到我的~/.bashrc文件中,導致凍結行為。這是導致問題的具體行:

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

為了解決這個問題,我只是從文件中刪除了有問題的行~/.bashrc

我不確定這一行是如何出現在我的~/.bashrc文件中的,但我懷疑它可能與我對 IntelliJ 遠端開發的使用有關。不過,這只是猜測,還需要進一步調查。

如果您遇到類似的問題,我建議您按照以下步驟恢復終端功能:

  1. 輸入 SSH 憑證後,立即按 Ctrl+C 多次。這將阻止執行我的文件中有問題的行~/.bashrc,並允許終端在我的情況下可用。
  2. 一旦可以存取終端,請檢查~/.bashrc文件中是否有任何意外或有問題的行,尤其是最近新增的行。就我而言,涉及的線路ng completion是罪魁禍首。
  3. 刪除或註解掉~/.bashrc文件中可能導致凍結問題的任何可疑行。
  4. 儲存變更~/.bashrc並重新啟動終端或再次取得檔案以套用修改。

或者,您也可以臨時重命名整個文件以檢查這是否導致問題:使用cd ~然後mv .bashrc newfilename

透過執行這些步驟,我能夠 (1.) 再次使用我的終端並 (2.) 解決凍結問題並恢復我的終端的正常功能。

未來的經驗教訓:擁有第二個可用於 SSH 登入的使用者帳戶總是好的。

相關內容