如何判断我的 Linux 机器上是否存在 CPU 故障

如何判断我的 Linux 机器上是否存在 CPU 故障

我想编写一个脚本,当我的机器将进程内存从磁盘交换到内存时,该脚本将终止我的进程。
确定这一点的最佳方法是什么?我看到 top 有 %wa,iostat 有 iowait 数据。vmstat 有交换入和交换出。
这可以用作指标吗?对我来说最好的是什么?有人可以推荐其他方法吗?

答案1

有几种方法,而且您自己已经描述了它们。

首先,查看顶部 - 查看 CPU 负载以及负载所在位置。如果大部分 CPU 时间都耗费在 %sys 上,则表明存在某种系统活动。还要检查内存使用情况,如果大部分内存处于交换状态,则持续的高 CPU %sys 意味着系统崩溃的情况。

接下来,vmstat。您知道要监视的字段。

对于历史数据,请使用 sar。再次查看消耗 CPU 时间的列。

mpstat 还将显示 CPU 使用情况。

总而言之,有很多工具,您可以使用一些 awk、cut、sort 轻松地过滤出您需要的特定字段。

相关内容