Linux 如何实时监控Linux用户和进程

Linux 如何实时监控Linux用户和进程

Linux是一种开源操作系统,越来越受开发人员和系统管理员的欢迎。它以其稳定性、安全性和灵活性而闻名,并广泛用于企业环境中。然而,和任何操作系统一样,及时监控系统性能以确保一切运行良好是非常重要的。这就是实时监视用户和进程变得至关重要的地方。

在本文中,我们将讨论如何实时监控Linux用户和进程。

我们将介绍一些用于此目的的最受欢迎的工具,例如w, who, last, top和htop,用于管理Linux子系统中的用户和进程。在本文的下一部分中,我们将解释如何使用这些工具实时监控系统性能。所以,让我们开始吧!

实时监控Linux用户

首先,我们将讨论如何实时监控Linux用户。一些最常用的命令行工具,可以帮助您密切关注用户活动的情况,如w、who和last命令。让我们逐个详细了解它们。

1. W命令

‘w’命令用于显示当前登录的所有用户的列表,以及他们的登录时间、当前进程和系统负载。

该命令非常简单易用。只需在终端中键入’w’即可查看当前登录到系统的用户列表 –

示例

$ w

输出

16:36:11 up 7 days,  6:21,  1 user,  load average: 0.07, 0.02, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
user1    pts/0    192.168.1.1      09:13    0.00s  0.02s  0.00s w

上述命令的输出显示当前有一个用户登录,user1。它还显示了他们登录的时间,他们的终端(TTY),他们的远程IP地址和当前系统负载。

2. Who命令

“who”命令和“w”命令非常相似。唯一的区别是它只会显示当前登录用户的一个列表,而没有太多额外的细节。

同样,使用这个命令也非常简单。只需在Linux终端中输入“who”。

示例

$ who

输出

user1  pts/0        2022-04-01 09:13 (192.168.1.1)

正如您在以上输出中看到的,’who’命令只会显示登录用户的列表,他们的终端和IP地址,而不像’w’命令那样显示更多的信息。

3. Last命令

‘last’命令会显示最近的登录和登出列表。要查看列表,请在终端中输入’last’。

示例

$ last

输出

user1    pts/0        192.168.1.1      Fri Apr  1 09:13   still logged in
user2    pts/1        192.168.1.2      Thu Mar 31 14:05 - 14:14  (00:08)
user3    pts/2        192.168.1.3      Thu Mar 31 13:44 - 13:49  (00:05)

如您在上面的输出中所见,’last’命令会显示最近登录和退出的用户列表。它还会显示每个用户的日期、时间和IP地址。

既然我们已经了解了一些基本的用于实时监控用户的命令行工具,让我们继续了解如何实时管理进程。

实时监控Linux进程

在本文的这一部分,我们将介绍如何为Linux系统实时监控Linux进程。这里有许多可用于此目的的工具,但我们将重点介绍两个受欢迎的命令行工具:top和htop。

1. top命令

首先,让我们看看top命令。top是一个内置的命令行工具,用于显示实时的系统信息,包括CPU使用情况、内存使用情况和正在运行的进程。

要启动top,请打开终端并在命令提示符下键入”top”。输出将实时更新并显示系统的当前状态。

示例

$ top

下面是top命令的示例输出: − 输出

top - 22:07:36 up  2:24,  2 users,  load average: 0.00, 0.00, 0.00
Tasks: 127 total,   1 running, 126 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.3 us,  0.3 sy,  0.0 ni, 99.4 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   7941.1 total,   4157.1 free,   2448.8 used,   1335.3 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   5045.6 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND  
 1432 root      20   0  339968  55808  19112 S   1.0   0.7   0:44.08 Xorg     
 2462 username  20   0  908564  95916  54456 S   0.3   1.2   0:10.32 gnome-te+
 2586 username  20   0 2203836 297076 111832 S   0.3   3.6   1:01.09 gnome-sh+
 3122 username  20   0 2415716 407556  92312 S   0.3   5.0   1:47.80 firefox 
    1 root      20   0  168952   9724   6664 S   0.0   0.1   0:02.62 systemd  
    2 root      20   0       0      0      0 S   0.0   0.0   0:00.03 kthreadd

如您所见,输出显示了进程ID(PID)、用户、CPU使用率、内存使用率等等。您还可以根据不同的条件对输出进行排序,比如CPU使用率或内存使用率。要做到这一点,请按下”O”键(大写字母O),然后选择您想要按照其排序的字段。

接下来,让我们来看一下htop命令。

2. htop命令

htop是top的一个更高级版本,提供了一个更友好的界面和额外的功能,比如能够在进程列表中垂直和水平滚动。

htop的输出返回了带有颜色编码的信息,使其更易于阅读和理解。它还提供了其他功能,比如按名称搜索特定进程、按CPU使用率过滤进程,甚至可以直接从htop界面中结束进程。

要启动htop,请打开终端并在命令提示符中输入”htop”。输出将实时更新并显示系统的当前状态。

$ htop

下面是输出的一个示例

Linux 如何实时监控Linux用户和进程

从上面输出的图片中可以看到,htop提供了系统上运行的进程的大量有用信息,包括它们的CPU和内存使用情况、进程ID等。您可以使用箭头键导航界面,还可以通过按下相应的键(例如,按F6按CPU使用量排序)按各种标准对进程进行排序。

除了top和htop命令之外,还有几个可以实时监控Linux进程的其他工具,例如iotop、nethogs和iftop。

结论

在本文中,我们讨论了如何实时监控Linux用户和进程。首先,我们介绍了一些常用的命令行工具,如w、who和last,用于监控Linux用户。在本文的后半部分,我们讨论了一些用于监控Linux用户和进程的最受欢迎的工具,例如top和htop。通过使用这些工具,您可以识别性能瓶颈,解决问题,并优化系统以使其运行顺畅。无论您是系统管理员还是开发人员,这些工具都将帮助您监测和优化Linux系统,以实现最高效率。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程