Linux 使用procinfo从/proc文件系统显示系统统计信息

Linux 使用procinfo从/proc文件系统显示系统统计信息

你是一个Linux用户或系统管理员,正在寻找一种快速方便的方式来访问你的机器上的系统统计信息吗?不用再找了,procinfo命令是一个有力的优势,它允许你从/proc文件系统访问关于系统性能的关键信息。

通过procinfo,你可以轻松快速地监控诸如CPU使用率、内存使用率和进程信息等重要指标,一切都可以在你的终端中完成。无论你是尝试诊断性能问题还是只想监控系统的健康状况,procinfo都是任何Linux用户或管理员必备的工具。

在本文中,我们将更详细地介绍如何使用procinfo从/proc文件系统访问和查看系统统计信息。我们将涵盖从基本用法到procinfo提供的一些最重要的指标,这样你就可以立即像专业人士一样监控你的系统。

安装方法

你可以使用特定于你发行版的软件包管理器安装’procinfo’。以下是一些示例 –

1. Ubuntu/Debian

要在Ubuntu或基于Debian的系统上安装procinfo,打开终端并运行以下命令 –

sudo apt-get install procinfo

2. CentOS/RHEL

在基于CentOS或RHEL的系统中,使用以下命令 –

sudo yum install procinfo-ng

3. Fedora

Fedora-based系统,请使用以下命令:

sudo dnf install procinfo-ng

4. Arch Linux

在Arch Linux中,使用以下命令-

sudo pacman -S procinfo-ng

5. Gentoo

对于基于 Gentoo 的系统,请使用以下命令 –

sudo emerge procinfo-ng

安装procinfo之后,您可以通过在终端中输入procinfo来运行它。如果它不在系统路径中,您可能需要指定可执行文件的完整路径,通常为/usr/bin/procinfo。

运行procinfo命令将会给出类似以下的输出:

System Status:   Linux mycomputer 4.15.0-96-generic #97-Ubuntu SMP Wed Apr 1 03:25:46 UTC 2020 x86_64
Kernel Version:  #97-Ubuntu SMP Wed Apr 1 03:25:46 UTC 2020 x86_64
Memory:           Total   Used    Free   Shared  Buffers Cached
                  Mem:    327948  247776  80172   21236   66772   96880
                  Swap:   0       0       0
Bootup:           Fri Jun 12 16:16:03 2020   Load average:      0.18 0.15 0.10 2/146 3413
User:             1 user    System:  0.60 seconds   Uptime:          0 days 01h 18m 55s
Processes:        146 running, 395 total,  1 zombie, 0 dead, 0 orphaned
CPU:              0.0% user,  0.0% nice,  0.0% system,  0.0% idle,  100% IO-wait
CPU0:             0.0% user,  0.0% nice,  0.0% system,  0.0% idle,  100% IO-wait
CPU1:             0.0% user,  0.0% nice,  0.0% system,  0.0% idle,  100% IO-wait
CPU2:             0.0% user,  0.0% nice,  0.0% system,  0.0% idle,  100% IO-wait
CPU3:             0.0% user,  0.0% nice,  0.0% system,  0.0% idle,  100% IO-wait
CPU4:             0.0% user,  0.0% nice,  0.0% system,  0.0% idle,  100% IO-wait
CPU5:             0.0% user,  0.0% nice,  0.0% system,  0.0% idle,  100% IO-wait
CPU6:             0.0% user,  0.0% nice,  0.0% system,  0.0% idle,  100% IO-wait
CPU7:             0.0% user,  0.0% nice,  0.0% system,  0.0% idle,  100% IO-wait

显示内存使用情况

在Linux中,获取有关内存使用情况的信息对于用户和管理员来说都是重要的,以便监控和优化内存资源的使用。这个关键的系统统计数据可以从/proc/meminfo文件中获得,该文件提供了关于系统当前内存使用情况的详细信息,包括总内存量、可用的空闲内存量和正在运行的进程使用的内存量。

要使用procinfo命令显示内存使用情况信息,只需以-m选项运行该命令。在输出中,您将获得以下信息 −

  • 内存总量 − 系统上可用的内存总量。
  • 使用的内存 − 系统当前正在使用的内存量。
  • 空闲内存 − 系统当前可用于使用的内存量。
  • 共享内存 − 共享内存对象正在使用的内存量。
  • 缓冲区 − 缓冲区缓存正在使用的内存量。
  • 缓存内存 − 页面缓存和块缓存正在使用的内存量。

例如,使用-m选项执行procinfo命令的输出可能如下所示 −

Memory:  Total   Used    Free   Shared  Buffers Cached
          Mem:   7948   7191     757      416     3077   2399
          Swap:  8191   1287    6904

在这个例子中,我们可以看到系统上可用的总内存量为7948 MB,当前使用了7191 MB,还有757 MB可供使用。我们还可以看到有416 MB被共享内存对象使用,3077 MB被缓冲区缓存使用,2399 MB被页面缓存和slab缓存使用。

显示CPU使用情况

/proc文件系统也是关于CPU使用情况的重要信息来源,/proc/stat文件中包含了系统的CPU利用率数据,例如在用户模式、系统模式和空闲模式下所花费的时间。为了以更用户友好的格式呈现这些信息,procinfo命令非常方便实用。

要显示CPU使用情况的信息,只需使用-c选项运行procinfo命令,就像这样−

$ procinfo -c

下面是输出的一个例子 −

CPU Usage:  user  nice   sys   idle   irq
           2.4   0.0    1.0   95.1   1.4

生成的结果显示了CPU在用户模式、系统模式和空闲模式下的时间比例。用户模式持续时间表示CPU执行用户空间进程的时间,而系统模式持续时间表示CPU执行内核代码的时间。

显示进程信息

可以从proc文件系统中获取有关Linux系统上运行进程的详细信息。/proc/[pid]/stat文件是该文件系统中的特定文件,包含有关特定进程的有价值的信息,如进程ID、父进程ID、CPU使用情况和内存使用情况。通过使用procinfo命令,可以以用户友好的格式显示这些信息。

要显示进程信息,只需使用procinfo命令加上-p选项,然后是进程ID,如下所示−

$ procinfo -p 1234

这是输出的一个例子 −

Process Information:
 PID     PPID    CPU%    MEM%   VSZ    RSS    TTY  STAT  START  TIME    COMMAND
 1234    1       2.4     0.2    12856  8464   ?     S     17:50  0:05    firefox

显示的输出提供了关于指定进程的详细信息,包括进程ID、父进程ID、CPU利用率和内存使用情况。此外,输出还提供了进程的虚拟内存大小(VSZ)和驻留集大小(RSS),这些是进程内存消耗的关键指标。

结论

总之,利用proc文件系统和procinfo命令收集Linux操作系统的重要系统统计信息是一种很好的方式。通过procinfo,系统管理员可以轻松访问和显示关键信息,如内存使用、CPU使用率和进程详情。

通过利用proc文件系统,管理员可以深入了解其Linux系统的性能,并检测任何潜在问题。凭借这些信息,他们可以优化系统性能并解决可能出现的任何问题。

总的来说,procinfo是任何Linux管理员必备的工具。它能以用户友好的格式提供清晰简洁的系统统计信息,使其成为管理和维护Linux系统的宝贵资产。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程