问题:我在具有 32GB RAM 的服务器上运行 3 个 java 进程。由于网络问题,我经常面临关闭的 ssh 会话。所以,我使用
nohup bash script.sh >log-file 2>&1 &运行命令。
现在我正在使用 nohup 运行该过程,另外我将它们放在后台。尽管如此,经过 2-3 小时的处理,我的 java 进程停止写入日志文件。我检查了/proc/pid/status。它表明该进程正在休眠,但实际上在我的情况下不应该发生这种情况。当我使用顶级时,它不会在顶级进程列表中显示我的进程。
我的问题是我怎么知道等待过程背后的原因?当我使用 top 检查 freemem 时,它显示在 32GB 空间中,正在使用 30GB,只有 2GB 可用。这意味着我的进程是活动的并占用空间但没有运行。
顺便说一句,我的服务器使用 nfs 服务器安装我的家和数据,我们使用 kerberos 进行身份验证。那么,这会是一个问题吗?我正在对即将到期的 kerberos 票证使用 krenew 命令。