我正在使用远程计算机(ssh 连接),一些命令突然停止工作。我的意思是,我输入它们,但什么也没发生:它们只是冻结了,没有任何输出,也没有完成执行。
有效的命令:
top, bc, nvidia-smi, sh, vim ~/.bashrc
不这样做的命令:
python, python2, python3 (regardless of arguments), source ~/.bashrc
除了 之外,其他命令都可以用 Ctrl+C 终止,python2
即使使用 Ctrl+C、Ctrl+Z 或 Ctrl+D 也无法终止。此外,如果我启动tmux
,那么对于每个新窗格,我都看不到标准提示符,也无法键入命令。按 Ctrl+C 后即可修复。
有足够的内存和 CPU 可用(我可以在 中看到这一点top
)。在工作状态和非工作状态之间没有注销。我所做的只是运行一些 tensorflow 模型(但它们是手写的,所以也许我可能会弄乱一些东西,但我不知道是什么)。以防万一,系统是 Ubuntu,我也在使用 Anaconda。
我尝试注销,但没用。我无法重新启动机器(还有其他人在使用它,我怀疑我就是做不到)。
我应该怎么办?
答案1
对于这种事情,不可能有“交钥匙”的解决方案。
我唯一一次遇到这种情况是在有 wifi 连接的服务器上,模块进入睡眠状态(节能)
在这里你似乎看到这仅适用于 python。
首先要做的是控制服务器资源的使用(top / htop等...),查阅不同的日志(/ var / log)...并查明其他用户是否也存在该问题。
- 知道这是否是“连接”的问题
- 知道它是否与您的服务器相连(您在其他地方是否有同样的担忧)
- 了解它是否与你的活动相关(python 使用)
- ...
此类问题可能由多种原因引起,因此有必要排除各种可能的来源。
如果您正在进行 Python 开发,我“感觉”到某些脚本存在问题:)
答案2
我不确定(我也不明白这有什么关系),但问题似乎是我创建了太多进程(我创建了一堆子进程,也许我没有正确地终止它们)。用 终止所有进程似乎pkill -U
有效。