我有一台 Linux 服务器,平均负载为 25%,用户在包含超过 5 万个文件的文件夹上发出 ls 命令,这些进程处于饥饿状态,我无法终止这些进程,因为这些进程没有父 ID。我尝试过 kill -9 和其他选项,但这些进程都没有被终止
我怎样才能终止这些进程以使负载恢复正常
答案1
听起来您已经失去了与 NFS 服务器的连接。如果恢复与挂载的连接,进程可能会恢复。您可能需要调查 NFS 服务器并确保一切正常,然后再重新启动。
为了避免将来再次遇到这种情况,您可能需要调查“intr”或“soft”NFS 挂载选项是否适合您的配置。
如果连接丢失,“soft”选项将导致磁盘写入操作在超时后失败。“intr”选项将无限期地重试该操作,但允许您手动终止进程。
请注意,“soft”可能会导致数据损坏,因此通常首选“intr”(来自 nfs(5) 手册页)
答案2
您说的平均负载是指右侧顶行的三个数字吗?您的屏幕看起来像这样吗?:
load average: 25.0, x.x, x.x
这实际上不是一个百分比。这是等待处理器的进程数。除非你有一个吨核心,这不是一个好数字。
您是否尝试过终止调用‘ls’的 shell?