4 个用于 Linux 系统监控的开源工具

尚无读者喜欢此内容。
Linux system monitoring tools

Opensource.com

信息是解决任何计算机问题的关键,包括与 Linux 及其运行硬件相关的问题。即使并非所有工具都默认安装,但大多数发行版都提供了许多可用的工具。这些工具可用于获取大量信息。

本文讨论了一些交互式命令行界面 (CLI) 工具,这些工具随 Red Hat 相关发行版(包括 Red Hat Enterprise Linux、Fedora、CentOS 和其他衍生发行版)一起提供,或者可以轻松安装在这些发行版上。虽然有可用的 GUI 工具,并且它们提供良好的信息,但 CLI 工具提供所有相同的信息,并且它们始终可用,因为许多服务器没有 GUI 界面,但所有 Linux 系统都有命令行界面。

本文重点介绍我通常使用的工具。如果我没有介绍您最喜欢的工具,请原谅我,并在评论区告诉我们您使用的工具以及原因。

我在 Linux 环境中进行问题判定的首选工具几乎总是系统监控工具。对我而言,这些工具是 top、atop、htop 和 glances。

所有这些工具都监控 CPU 和内存使用情况,并且大多数工具至少列出有关正在运行进程的信息。有些工具还监控 Linux 系统的其他方面。所有工具都提供系统活动的近实时视图。

负载平均值

在继续讨论监控工具之前,重要的是更详细地讨论负载平均值。

负载平均值是衡量 CPU 使用率的重要标准,但是当我例如说 1 分钟(或 5 分钟或 10 分钟)负载平均值为 4.04 时,这到底意味着什么?负载平均值可以被认为是 CPU 需求的度量;它是一个数字,表示等待 CPU 时间的平均指令数。因此,这是 CPU 性能的真实度量,不同于标准的“CPU 百分比”,后者包括 CPU 实际上未工作时的 I/O 等待时间。

例如,完全利用的单处理器系统 CPU 的负载平均值将为 1。这意味着 CPU 正好跟上需求;换句话说,它具有完美的利用率。负载平均值小于 1 意味着 CPU 未充分利用,而负载平均值大于 1 意味着 CPU 过度利用,并且存在积压的、未满足的需求。例如,单 CPU 系统中 1.5 的负载平均值表明,三分之一的 CPU 指令被迫等待执行,直到前一个指令完成。

这对于多处理器也是如此。如果一个 4 CPU 系统具有 4 的负载平均值,那么它具有完美的利用率。例如,如果它的负载平均值为 3.24,则其三个处理器被完全利用,而一个处理器被利用了约 76%。在上面的示例中,一个 4 CPU 系统具有 1 分钟的 4.04 负载平均值,这意味着 4 个 CPU 中没有剩余容量,并且一些指令被迫等待。一个完美利用的 4 CPU 系统将显示 4.00 的负载平均值,因此示例中的系统已完全加载但未过载。

负载平均值的最佳条件是使其等于系统中 CPU 的总数。这将意味着每个 CPU 都被充分利用,但又没有指令必须被迫等待。较长期的负载平均值提供了总体利用率趋势的指示。

Linux Journal 在 2006 年 12 月 1 日的刊物中发表了一篇优秀文章,描述了负载平均值、其背后的理论和数学,以及如何解释它们。

信号

此处讨论的所有监视器都允许您向正在运行的进程发送信号。这些信号中的每一个都有特定的功能,尽管其中一些信号可以由接收程序使用信号处理程序来定义。

单独的 kill 命令也可用于向监视器外部的进程发送信号。kill -l 可用于列出可以发送的所有可能的信号。其中三个信号可用于终止进程。

  • SIGTERM (15): 信号 15,SIGTERM 是按下 k 键时 top 和其他监视器发送的默认信号。它也可能是最无效的,因为程序必须内置信号处理程序。程序的信号处理程序必须拦截传入的信号并采取相应的行动。因此,对于大多数没有信号处理程序的脚本,SIGTERM 会被忽略。SIGTERM 背后的想法是,通过简单地告诉程序您希望它自行终止,它将利用这一点并清理打开的文件等内容,然后以受控且友好的方式自行终止。
  • SIGKILL (9): 信号 9,SIGKILL 提供了一种终止即使是最顽固的程序(包括脚本和其他没有信号处理程序的程序)的方法。但是,对于没有信号处理程序的脚本和其他程序,它不仅会终止正在运行的脚本,还会终止脚本正在运行的 shell 会话;这可能不是您想要的行为。如果您想终止一个进程并且不介意是否友好,那么这就是您想要的信号。此信号无法被程序代码中的信号处理程序拦截。
  • SIGINT (2): 信号 2,当 SIGTERM 不起作用并且您希望程序以更友好的方式终止时,可以使用 SIGINT,例如,不终止程序正在运行的 shell 会话。SIGINT 向程序正在运行的会话发送中断。这相当于使用 Ctrl-C 组合键终止正在运行的程序,特别是脚本。

为了对此进行实验,请打开一个终端会话,并在 /tmp 中创建一个名为 cpuHog 的文件,并使用权限 rwxr-xr-x 使其可执行。将以下内容添加到文件中。

#!/bin/bash
# This little program is a cpu hog
X=0;while [ 1 ];do echo $X;X=$((X+1));done

在不同的窗口中打开另一个终端会话,将它们彼此相邻放置,以便您可以观看结果,并在新会话中运行 top。使用以下命令运行 cpuHog 程序

/tmp/cpuHog

该程序只是递增计数并向 STDOUT 打印 X 的当前值。它会占用 CPU 周期。运行 cpuHog 的终端会话应在 top 中显示非常高的 CPU 使用率。观察这对 top 中的系统性能有何影响。CPU 使用率应立即上升,负载平均值也应随着时间的推移而开始增加。如果需要,您可以打开其他终端会话并在其中启动 cpuHog 程序,以便运行多个实例。

确定您要终止的 cpuHog 程序的 PID。按 k 键并查看摘要部分底部交换行下的消息。Top 会询问您要终止的进程的 PID。输入该 PID 并按 Enter。现在 top 会询问信号编号并显示默认值 15。尝试此处描述的每个信号并观察结果。

4 个用于 Linux 系统监控的开源工具

top

我在执行问题判定时使用的第一个工具之一是 top。我喜欢它,因为它自古以来就存在,并且始终可用,而其他工具可能未安装。

top 程序是一个非常强大的实用程序,可提供有关您正在运行的系统的大量信息。这包括有关内存使用情况、CPU 负载以及正在运行的进程列表的数据,包括每个进程使用的 CPU 时间和内存量。Top 以近乎实时的速度显示系统信息,(默认情况下)每三秒更新一次。top 允许使用秒的小数部分,尽管非常小的值可能会给系统带来很大的负载。它也是交互式的,并且可以修改要显示的数据列和排序的列。

图 1 显示了 top 程序的示例输出。top 的输出分为两个部分,分别称为“摘要”部分(即输出的顶部部分)和“进程”部分(即输出的下部部分);为了保持一致性,我将在 top、atop、htop 和 glances 中使用此术语。

top 程序有许多有用的交互式命令,您可以使用这些命令来管理数据的显示并操作各个进程。使用 h 命令查看各种交互式命令的简短帮助页面。请务必按两次 h 以查看帮助的两个页面。使用 q 命令退出。

摘要部分

top 输出的摘要部分是系统状态的概述。第一行显示系统正常运行时间和 1 分钟、5 分钟和 15 分钟负载平均值。在下面的示例中,负载平均值分别为 4.04、4.17 和 4.06。

第二行显示当前活动的进程数以及每个进程的状态。

接下来显示包含 CPU 统计信息的行。可以有一行组合系统中所有 CPU 的统计信息(如下例所示),或者每个 CPU 一行;在示例中使用的计算机的情况下,这是一个单四核 CPU。按 1 键可在 CPU 使用率的合并显示和单个 CPU 的显示之间切换。这些行中的数据以可用总 CPU 时间的百分比形式显示。

以下描述了这些以及 CPU 数据的其他字段。

  • us: 用户空间 – 在用户空间(即不在内核中)中运行的应用程序和其他程序。
  • sy: 系统调用 – 内核级函数。这不包括内核本身占用的 CPU 时间,仅包括内核系统调用。
  • ni: 优先级调整 – 以正优先级调整级别运行的进程。
  • id: 空闲 – 空闲时间,即任何正在运行的进程未使用的时间。
  • wa: 等待 – 花费在等待 I/O 发生时的 CPU 周期。这是浪费的 CPU 时间。
  • hi: 硬件中断 – 花费在处理硬件中断时的 CPU 周期。
  • si: 软件中断 – 花费在处理软件创建的中断(例如系统调用)时的 CPU 周期。
  • st: 窃取时间 – 虚拟 CPU 等待真实 CPU 的 CPU 周期百分比,而 hypervisor 正在为另一个虚拟处理器提供服务。

摘要部分的最后两行是内存使用情况。它们显示物理内存使用情况,包括 RAM 和交换空间。

Figure 1: The top command showing a fully utilized 4-core CPU.

图 1:top 命令显示完全利用的 4 核 CPU。

您可以使用 1 命令将 CPU 统计信息显示为单个全局数字(如上面的图 1 所示),或按单个 CPU 显示。l 命令打开和关闭负载平均值。tm 命令分别循环切换摘要部分的进程/CPU 行和内存行,在关闭、仅文本和几种类型的条形图格式之间切换。

进程部分

top 输出的进程部分是系统中正在运行的进程的列表——至少对于终端显示器上有空间容纳的进程数而言是这样。下面描述了 top 显示的默认列。还有其他几个列可用,通常可以通过单个按键添加每个列。有关详细信息,请参阅 top 手册页。

  • PID – 进程 ID。
  • USER – 进程所有者的用户名。
  • PR – 进程的优先级。
  • NI – 进程的优先级调整值。
  • VIRT – 分配给进程的虚拟内存总量。
  • RES – 进程消耗的非交换物理内存的常驻集大小(以 kb 为单位,除非另有说明)。
  • SHR – 进程使用的共享内存量(以 kb 为单位)。
  • S – 进程的状态。可以是 R(正在运行)、S(正在休眠)和 Z(僵尸)。不太常见的状态可以是 T(已跟踪或已停止)和 D(不可中断的睡眠)。
  • %CPU – 在此进程在上次测量的时间段内使用的 CPU 周期或时间的百分比。
  • %MEM – 进程使用的物理系统内存的百分比。
  • TIME+ – 自进程启动以来,进程消耗的总 CPU 时间,精确到百分之一秒。
  • COMMAND – 这是用于启动进程的命令。

使用 Page UpPage Down 键滚动浏览正在运行的进程列表。ds 命令可互换使用,可用于设置更新之间的延迟间隔。默认值为三秒,但我更喜欢一秒间隔。间隔粒度可以低至十分之一 (0.1) 秒,但这将消耗更多您尝试测量的 CPU 周期。

您可以使用 <> 键将排序的列向左或向右移动。

k 命令用于终止进程,r 命令用于重新调整其优先级。您必须知道要终止或重新调整优先级的进程的进程 ID (PID),该信息显示在 top 显示的进程部分中。终止进程时,top 首先询问 PID,然后询问用于终止进程的信号编号。键入它们并在每次之后按 Enter 键。从信号 15,SIGTERM 开始,如果这不能终止进程,则使用 9,SIGKILL。

配置

如果您更改了 top 显示,则可以使用 W(大写)命令将更改写入配置文件 ~/.toprc(位于您的主目录中)。


atop

我也喜欢 atop。当您需要有关 I/O 活动类型的更多详细信息时,这是一个出色的监视器。默认刷新间隔为 10 秒,但可以使用间隔 i 命令将其更改为适合您尝试执行的操作的任何值。atop 无法像 top 那样以亚秒级间隔刷新。

使用 h 命令显示帮助。请务必注意,帮助有多个页面,您可以使用空格键向下滚动以查看其余部分。

atop 的一个不错的功能是它可以将原始性能数据保存到文件中,然后在以后播放以进行仔细检查。这对于跟踪间歇性问题非常方便,尤其是那些在您无法直接监视系统时发生的问题。atopsar 程序用于播放保存文件中的数据。

Figure 2: The atop system monitor provides information about disk and network activity in addition to CPU and process data..

图 2:atop 系统监视器除了 CPU 和进程数据外,还提供有关磁盘和网络活动的信息。

摘要部分

atop 包含与 top 大致相同的信息,但也显示有关网络、原始磁盘和逻辑卷活动的信息。上面的图 2 显示了显示顶部列中的这些附加数据。请注意,如果您的水平屏幕空间足以支持更宽的显示,则将显示其他列。相反,如果您的水平宽度较小,则显示的列数会更少。我也喜欢 atop 在图 2 中最右两列的第二行显示当前 CPU 频率和缩放因子——我在其他任何这些监视器上都没有见过。

进程部分

atop 进程显示包括与 top 相同的某些列,但它还包括每个进程的磁盘 I/O 信息和线程计数,以及每个进程的虚拟和实际内存增长统计信息。与摘要部分一样,如果有足够的水平屏幕空间,将显示其他列。例如,在图 2 中,显示了进程所有者的 RUID(实际用户 ID)。展开显示还将显示 EUID(有效用户 ID),当程序以 SUID(设置用户 ID)运行时,EUID 可能很重要。

atop 还可以提供有关每个进程的磁盘、内存、网络和调度信息的详细信息。只需分别按 dmns 键即可查看该数据。g 键将显示返回到通用进程显示。

可以使用 C 按 CPU 使用率排序、M 按内存使用率排序、D 按磁盘使用率排序、N 按网络使用率排序以及 A 进行自动排序来轻松完成排序。自动排序通常按最繁忙的资源对进程进行排序。只有在安装并加载 netatop 内核模块后,才能对网络使用情况进行排序。

您可以使用 k 键终止进程,但没有重新调整进程优先级的选项。

默认情况下,在给定时间间隔内未发生活动的网络和磁盘设备不会显示。这可能会导致对主机硬件配置的错误假设。f 命令可用于强制 atop 显示空闲资源。

配置

atop 手册页提到了全局和用户级别的配置文件,但在我自己的 Fedora 或 CentOS 安装中找不到任何配置文件。也没有命令来保存修改后的配置,并且在程序终止时不会自动进行保存。因此,似乎现在无法永久更改配置。


htop

htop 程序很像 top,但功能更强大。它看起来很像 top,但它也提供了一些 top 不具备的功能。但是,与 atop 不同,它不提供任何类型的磁盘、网络或 I/O 信息。



Figure 3: htop has nice bar charts to to indicate resource usage and it can show the process tree.

图 3:htop 具有漂亮的条形图来指示资源使用情况,并且可以显示进程树。

摘要部分

htop 的摘要部分以两列显示。它非常灵活,可以配置为以几乎任何您喜欢的顺序显示几种不同类型的信息。尽管 top 和 atop 的 CPU 使用率部分可以在组合显示和显示每个 CPU 的一个条形图之间切换,但 htop 不能。因此,它有许多不同的 CPU 显示选项,包括单个组合条、每个 CPU 一个条以及将特定 CPU 分组到一个条中的各种组合。

我认为这是一个比其他一些系统监视器更清晰的摘要显示,并且更易于阅读。此摘要部分的缺点是,htop 中无法获得其他监视器中可用的一些信息,例如按用户、空闲和系统时间划分的 CPU 百分比。

F2 (设置) 键用于配置 htop 的摘要部分。显示可用数据显示的列表,您可以使用功能键将它们添加到左列或右列,并在选定的列中上下移动它们。

进程部分

htop 的进程部分与 top 的进程部分非常相似。与其他监视器一样,可以按多种因素对进程进行排序,包括 CPU 或内存使用率、用户或 PID。请注意,选择树视图时无法排序。

F6 键允许您选择排序的列;它显示可用于排序的列列表,您可以选择所需的列并按 Enter 键。

您可以使用向上和向下箭头键选择进程。要终止进程,请使用向上和向下箭头键选择目标进程并按 k 键。将显示要发送到进程的信号列表,并选中 15,SIGTERM。您可以指定要使用的信号(如果与 SIGTERM 不同)。您也可以使用 F7F8 键重新调整所选进程的优先级。

我特别喜欢的一个命令是 F5,它以树形格式显示正在运行的进程,从而可以轻松确定正在运行的进程的父/子关系。

配置

每个用户都有自己的配置文件 ~/.config/htop/htoprc,并且对 htop 配置的更改会自动存储在那里。htop 没有全局配置文件。


glances

我最近才了解到 glances,它可以显示比我目前熟悉的任何其他监视器更多的关于您计算机的信息。这包括磁盘和网络 I/O、可以显示 CPU 和其他硬件温度以及风扇速度的热读数,以及按硬件设备和逻辑卷划分的磁盘使用情况。

拥有所有这些信息的缺点是 glances 本身会使用大量的 CPU 资源。在我的系统上,我发现它可能会使用大约 10% 到 18% 的 CPU 周期。这很多,因此您在选择监视器时应考虑这种影响。

摘要部分

glances 的摘要部分包含与其他监视器的摘要部分大部分相同的信息。如果您有足够的水平屏幕空间,它可以同时显示带有条形图和数字指示器的 CPU 使用率,否则它将仅显示数字。

 

Figure 4: The glances interface with network, disk, filesystem, and sensor information.

图 4:glances 界面,包含网络、磁盘、文件系统和传感器信息。

我比其他监视器更喜欢此摘要部分;我认为它以易于理解的格式提供了正确的信息。与 atop 和 htop 一样,您可以按 1 键在单个 CPU 核心的显示或将所有 CPU 核心作为单个平均值的全局显示之间切换,如上面的图 4 所示。

进程部分

进程部分显示有关每个正在运行的进程的标准信息。进程可以自动 a 排序,或按 CPU c、内存 m、名称 p、用户 u、I/O 速率 i 或时间 t 排序。自动排序时,进程首先按最常用的资源排序。

Glances 还在屏幕的最底部显示警告和严重警报,包括事件的时间和持续时间。当您无法长时间盯着屏幕来诊断问题时,这可能会有所帮助。可以使用 l 命令打开或关闭这些警报日志,可以使用 w 命令清除警告,而可以使用 x 清除所有警报和警告。

有趣的是,glances 是这些监视器中唯一一个既不能用于终止进程也不能用于重新调整进程优先级的监视器。它严格来说仅用作监视器。您可以使用外部 killrenice 命令来操作进程。

侧边栏

Glances 有一个非常好的侧边栏,可以显示 top 或 htop 中不可用的信息。Atop 确实显示了其中一些数据,但 glances 是唯一显示传感器数据的监视器。有时,查看计算机内部的温度会很好。可以使用 dfns 命令分别打开和关闭各个模块:磁盘、文件系统、网络和传感器。可以使用 2 切换整个侧边栏。

可以使用 D 显示 Docker 统计信息。

配置

Glances 不需要配置文件即可正常工作。如果您选择拥有配置文件,则系统范围的配置文件实例将位于 /etc/glances/glances.conf 中。个人用户可以在 ~/.config/glances/glances.conf 中拥有本地实例,这将覆盖全局配置。这些配置文件的主要目的是设置警告和严重警报的阈值。我找不到任何方法来永久更改其他配置(例如侧边栏模块或 CPU 显示)。似乎您每次启动 glances 时都必须重新配置这些项目。

有一个文档 /usr/share/doc/glances/glances-doc.html 提供了有关使用 glances 的大量信息,并且明确指出您可以使用配置文件来配置要显示的模块。但是,给出的信息和示例都没有描述如何执行此操作。


结论

请务必阅读每个监视器的手册页,因为其中包含大量有关配置和与其交互的信息。还可以使用 h 键在交互模式下获得帮助。此帮助可以为您提供有关选择和排序数据列、设置更新间隔以及更多信息。

当您寻找问题原因时,这些程序可以告诉您很多信息。它们可以告诉您何时某个进程(以及哪个进程)正在占用 CPU 时间、是否有足够的可用内存、进程是否在等待 I/O(例如磁盘或网络访问完成)时停滞不前等等。

我强烈建议您花时间在正常运行的系统上观看这些监视程序,以便您能够在寻找问题原因时区分那些可能异常的事物。

您还应该意识到,使用这些监视工具的行为会改变系统对资源(包括内存和 CPU 时间)的使用。top 和大多数这些监视器可能使用系统 CPU 时间的 2% 或 3%。glances 比其他监视器的影响更大,并且可能使用 10% 到 20% 的 CPU 时间。在选择工具时,请务必考虑这一点。

我最初打算将 SAR(系统活动报告器)包含在本文中,但是随着本文篇幅的增加,我也清楚地认识到 SAR 与这些监视工具显着不同,并且应该单独撰写一篇文章。因此,考虑到这一点,我计划撰写一篇关于 SAR 和 /proc 文件系统的文章,以及第三篇关于如何使用所有这些工具来定位和解决问题的文章。

标签
David Both
David Both 是一位开源软件和 GNU/Linux 倡导者、培训师、作家和演讲者。自 1996 年以来,他一直从事 Linux 和开源软件工作,自 1969 年以来一直从事计算机工作。他是“系统管理员 Linux 哲学”的坚定支持者和传播者。

20 条评论

David,很棒的文章。我已经与我的同事分享了。`atop` 的记录和重放能力非常棒,我预计将来会经常使用它。

`iotop` 是一个很棒的工具,用于查找 I/O 负载问题。当我专门查找网络性能时,我发现自己经常使用的另一个工具是 `iftop`。我怀疑还有一篇或三篇关于网络性能诊断的文章。

我期待 sar 文章。我已经使用了很多,但只是零散地使用,所以我迫不及待想看看我错过了什么。

David,很棒的文章。我从您早期的一篇文章中了解了 Glances。更多地了解“top”总是好的,您在那里给了我一些新的信息需要考虑。感谢您,我现在安装了“htop”,我以前从未听说过。这里有大量的宝贵信息。感谢分享。

如果能告诉我们,在哪里可以找到这三个额外的工具以及如何安装它们,那就太好了。

我不能代表其他发行版,但它们都在 Fedora 23 的默认存储库中,因此以下命令应该可以获取所有三个。

$ sudo dnf install atop glances htop

回复 作者:Stephan T. (未验证)

您试过 nmon 吗?它提供了大量信息,如果您将其重定向到文件,则有一个出色的 Excel 电子表格,可让您导入和绘制结果等。

在您的评论之前,我没有试过,但现在我已经试过了。我刚刚安装了它,并打算花一些时间来了解它。感谢您让我们大家了解它。

回复 作者:Rob Arseneault (未验证)

拜托,伙计!!难道不是每个人都使用“noexec”选项挂载 /tmp 吗?!

David,您看过开源 sysdig 吗?可以将 sysdig 视为 strace + tcpdump + htop + iftop + lsof 合而为一。www.sysdig.org

不,我没有。事实上,在我阅读您的帖子之前,我什至没有听说过它。但我肯定会尝试一下。感谢您提及它。

回复 作者:Apurva (未验证)

>>它是一个数字,表示等待 CPU 时间的平均指令数。

如果我有 4 个 CPU 并且只有 4 个进程在运行,那不是意味着我没有指令在等待吗?而不是像文章列出的那样是 4。试图更好地理解这部分,因为等待和“要执行”之间存在差异。我认为,如果所有 CPU 都在赶上,或者具有比请求更多的 CPU 功率,那么等待的进程将少于 1 个。

像 top、htop、atop、iotop、iftop 和 lsof 这样的工具我经常使用。感谢 David 在您的文章中介绍了 Glances。

监控的另一个维度是查看你的系统 - 它们的功能,它们提供的服务是否正常运行,以及它们是否根据最佳实践进行配置。 如果你对数据中心级别的维度视图感兴趣,那么你应该查看 Assimilation System Management 套件 http://AssimilationSystems.com/

好文章!

我尝试用 netdata 可视化许多系统和应用程序指标。 演示:http://netdata.firehol.org/

看看它。 它很好(警告:我写的,所以我可能有偏见:)。

团队,

只有我一个人觉得 top 和其他工具不是监控工具,而是当前系统状态检查工具吗?

对于监控,我希望有一些历史记录,可以用来与 top 显示的今日统计数据进行比较:)

我的下一篇文章将讨论 SAR(系统活动报告器),它提供了 30 天的系统活动历史记录,你可以将其用于比较目的。 此外,正如我在文章中提到的,atop 可以保存原始数据,并在以后回放以进行比较。

回复 ,作者 Ruslanas Gžibovskis (未验证)

嗨!

只是澄清一下:htop 确实显示 I/O 信息。 只是它不在默认列集中,但是你可以通过进入 Setup [F2] 屏幕来启用各种按进程的 I/O 信息字段。

Htop 确实在 F2 设置中有 I/O 选项... 但其不准确性让我担忧。

对于“一个”系统或者只有少量 Linux 系统来说,这些都是很棒的工具。 如果你需要监控 100、200、500、1000 甚至更多 Linux 系统,并且登录到每个系统或对所有系统运行远程命令是不切实际的,那么最好能有一个关于监控 Linux 的总结。 我知道 Nagios 及其更好的分支 Icinga,但你或其他人在使用方面是否有其他开源替代方案的经验?

nmon 怎么样?

非常有信息量的文章。

阅读这篇文章使我在监控 Linux 系统方面获得了额外的专业知识。 我以前只知道 top,现在我知道了另外 3 个很棒的工具。

谢谢..

Creative Commons License本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
© 2025 open-source.net.cn. All rights reserved.