我通过 ssh 在远程服务器上启动了一个非常消耗资源的过程。这是一个在 MATLAB 中运行的优化问题。它需要完整的内存和 CPU。事实上,我什至无法通过 ssh 连接到根本不回复的机器。我如何杀死该进程?我没有root访问权限。
J. *_*ker 13
如果您的用户启动了该过程,而您只能远程访问,则您的选择是有限的。
我会尝试远程终止进程,这可能需要一些时间才能排队!
ssh -l $USER $HOSTNAME 'pkill -9 MATLAB'
Run Code Online (Sandbox Code Playgroud)
如果这会执行,但不会终止正在运行的进程。您可以随时终止用户创建的所有进程。这将是最后的手段,如果您知道进程名称,显然应该避免。
ssh -l $USER $HOSTNAME 'pkill -9 -u $USER'
Run Code Online (Sandbox Code Playgroud)
如果您有任何 KVM 或 IPMI 访问权限,那么现在是时候解决它了。
如果机器对任何网络请求都没有反应,那么你就完蛋了。通过一个简单的消除过程,如果您无法获得远程访问权限,则需要控制台访问权限。
要有耐心。如果机器频繁交换,则可能需要几分钟才能响应。
为了将来,保持 ssh 会话打开,并准备好潜在麻烦进程的进程 ID。所有主流 shell 都kill
内置了该命令,因此即使机器负载严重或您的用户已达到其进程限制,您也可以终止进程。
也为了将来,您可以通过ulimit
在启动它的 shell 中运行命令来限制 Matlab 进程可以分配的资源。特别是,ulimit -Sv 42
将任何一个进程可以分配的虚拟内存总量限制为 42kB(该限制适用于该 shell 随后启动的每个进程)。
归档时间: |
|
查看次数: |
22107 次 |
最近记录: |