介绍
在本实验中,我们将探索 Linux 的 w 命令,该命令提供了当前登录系统的用户及其活动的信息。我们将学习如何分析用户登录会话、监控系统负载,并利用 w 命令的各种选项来收集有关系统性能和用户行为的详细信息。理解 w 命令对于在 Linux 系统上进行有效的系统监控和管理至关重要。
在本实验中,我们将探索 Linux 的 w 命令,该命令提供了当前登录系统的用户及其活动的信息。我们将学习如何分析用户登录会话、监控系统负载,并利用 w 命令的各种选项来收集有关系统性能和用户行为的详细信息。理解 w 命令对于在 Linux 系统上进行有效的系统监控和管理至关重要。
w 命令在这一步中,我们将探索 Linux 中的 w 命令,该命令提供了当前登录系统的用户及其活动的信息。
w 命令显示以下信息:
让我们首先在终端中运行 w 命令:
w
示例输出:
17:30:32 up 1 day, 23:03, 0 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
输出显示当前没有用户登录。让我们以另一个用户身份登录并查看输出:
sudo su - user2
w
示例输出:
17:31:00 up 1 day, 23:03, 1 user, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
user2 pts/0 172.17.0.1 17:30 0.00s 0.01s 0.00s w
输出现在显示用户 user2 从终端 pts/0 登录,并且已经空闲了 0.00 秒。WHAT 列显示用户当前正在运行 w 命令。
你还可以使用 w 命令的各种选项来获取有关登录用户和系统负载的更详细信息:
w -h:省略标题行w -s:短格式,仅显示名称、终端和时间w -i:以短格式显示空闲时间(分钟)w username:显示特定用户的信息理解 w 命令对于监控 Linux 系统中的用户活动和系统性能至关重要。
在这一步中,我们将学习如何使用 w 命令和其他相关工具来分析用户登录会话。
首先,让我们使用 w 命令列出所有当前登录的用户:
w
示例输出:
17:35:01 up 1 day, 23:07, 1 user, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
user2 pts/0 172.17.0.1 17:30 0.00s 0.01s 0.00s w
输出显示用户 user2 当前从终端 pts/0 登录。
为了获取有关用户登录会话的更详细信息,我们可以使用 who 命令:
who
示例输出:
user2 pts/0 2023-04-18 17:30 (172.17.0.1)
who 命令显示了用户名、终端、登录时间以及用户登录的主机。
另一个有用的命令是 last,它显示了最近登录用户的列表:
last
示例输出:
user2 pts/0 172.17.0.1 Tue Apr 18 17:30:00 2023 - 17:35:01 (0:05)
reboot system boot 4.15.0-162-gene Tue Apr 18 17:31:49 2023 - 17:35:01 (0:03)
user1 pts/0 172.17.0.1 Tue Apr 18 17:29:00 2023 - 17:30:00 (0:01)
last 命令显示了用户名、终端、主机、登录时间、注销时间以及会话的持续时间。
通过分析这些命令的输出,你可以清楚地了解系统上的用户登录会话,这对于监控和故障排除非常有用。
在这一步中,我们将学习如何使用 w 命令和其他相关工具来监控系统负载和资源利用率。
w 命令提供了系统负载的信息,以三个负载平均值的形式显示:
w
示例输出:
17:40:01 up 1 day, 23:12, 1 user, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
user2 pts/0 172.17.0.1 17:30 0.00s 0.01s 0.00s w
三个负载平均值分别表示过去 1 分钟、5 分钟和 15 分钟的系统负载。负载平均值为 0.00 表示系统没有显著的负载。
为了获取有关系统资源利用率的更详细信息,我们可以使用 top 命令:
top
示例输出:
top - 17:40:42 up 1 day, 23:12, 1 user, load average: 0.00, 0.00, 0.00
Tasks: 105 total, 1 running, 104 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 2044880 total, 1605244 free, 160676 used, 278960 buff/cache
KiB Swap: 1048572 total, 1048572 free, 0 used. 1603204 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 41824 4464 2896 S 0.0 0.2 0:01.37 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 20 0 0 0 0 I 0.0 0.0 0:00.00 rcu_gp
top 命令提供了有关系统 CPU、内存和进程利用率的实时信息。你可以使用它来识别消耗最多资源的进程,并采取适当的措施。
此外,你还可以使用 free 命令来获取系统内存使用情况的信息:
free -h
示例输出:
total used free shared buff/cache available
Mem: 1.9G 156M 1.5G 1.1M 278M 1.5G
Swap: 1.0G 0B 1.0G
free 命令显示了系统上总内存、已用内存、可用内存以及交换空间的使用情况。
通过使用这些工具监控系统负载和资源利用率,你可以识别性能瓶颈并采取适当的措施来优化系统性能。
在本实验中,我们学习了如何在 Linux 中使用 w 命令来理解用户登录会话并监控系统负载和资源利用率。我们探索了 w 命令提供的信息,包括登录用户的用户名、他们使用的终端、登录时间、空闲时间以及当前活动。我们还学习了如何使用 w 命令的各种选项来获取更详细的信息,例如省略标题行、仅显示名称、终端和登录时间,以及以更短的格式显示空闲时间。最后,我们讨论了如何使用 w 命令和其他相关工具来分析用户登录会话和系统性能。