一些标准命令在远程机器上冻结

一些标准命令在远程机器上冻结

我正在使用远程计算机(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有效。

相关内容