我在 Linux (RHEL) 机器上有一个进程 (JVM),它无缘无故地被终止。过去几天里,这种情况发生了两次。JVM 在终止前打印了以下内容:
Service killed by signal 9
这使我相信有什么东西正在用 SIGKILL (-9) 杀死它。
我最初的想法是这是 OOM 杀手,但是我在 /var/log/messages 或 dmesg 中找不到任何证据表明 OOM 杀手在执行任何操作(这是 RHEL,所以我没有 syslog 或 kern.log)。此外,该机器的缓冲区缓存使用了大约 140GB(总共 196GB),这表明它有足够的内存可以提供给需要它的进程。
我也确信没有人登录并手动终止该进程。
有人能想到有什么方法可以终止这样的进程吗?
或者,如果再次发生这种情况,有人能想出一种方法来发现是什么导致了该过程的终止吗?