介绍
在本实验中,我们将探索 Linux 的 top
命令,这是一个用于监控系统性能和资源利用的强大工具。我们将从了解 top
命令的基本功能开始,包括它显示有关运行进程、CPU、内存和其他系统资源的实时信息的能力。然后,我们将深入研究各种选项和自定义功能,以便根据我们的特定需求调整 top
命令的输出,从而有效地分析系统性能并识别潜在的瓶颈。
在本实验中,我们将探索 Linux 的 top
命令,这是一个用于监控系统性能和资源利用的强大工具。我们将从了解 top
命令的基本功能开始,包括它显示有关运行进程、CPU、内存和其他系统资源的实时信息的能力。然后,我们将深入研究各种选项和自定义功能,以便根据我们的特定需求调整 top
命令的输出,从而有效地分析系统性能并识别潜在的瓶颈。
在这一步中,我们将学习 top
命令,这是一个用于监控 Linux 系统性能和资源利用的强大工具。top
命令提供了有关运行进程、CPU、内存和其他系统资源的实时信息。
让我们从运行 top
命令开始:
$ top
示例输出:
top - 14:22:37 up 1 day, 12:34, 0 users, load average: 0.00, 0.01, 0.05
Tasks: 101 total, 1 running, 99 sleeping, 1 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
MiB Mem : 1992.0 total, 1537.0 free, 235.0 used, 220.0 buff/cache
MiB Swap: 2047.9 total, 2047.9 free, 0.0 used. 1555.3 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 8788 5688 3828 S 0.0 0.3 0:02.14 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
4 root 20 0 0 0 0 I 0.0 0.0 0:00.00 rcu_par_gp
5 root 20 0 0 0 0 I 0.0 0.0 0:00.00 slub_flushwq
top
命令显示了各种系统信息,包括:
你可以通过按下各种键来自定义 top
命令的输出,例如:
h
:显示帮助菜单1
:在每 CPU 和聚合 CPU 利用率之间切换f
:管理显示的列o
:自定义排序顺序u
:按特定用户过滤进程要退出 top
命令,请按 q
。
在这一步中,我们将探索 top
命令中可用的各种选项和自定义功能,以便根据你的特定需求调整输出。
让我们从显示帮助菜单开始:
$ top -h
这将显示所有可用选项及其描述。一些常用的选项包括:
-d
:设置更新之间的延迟(默认是 3 秒)-n
:指定迭代次数(默认是无限次)-p
:监控特定的进程 ID-u
:显示特定用户拥有的进程-o
:按特定列对进程列表进行排序例如,要显示按内存使用排序的前 5 个进程,可以运行:
$ top -o %MEM -n 5
示例输出:
top - 14:30:37 up 1 day, 12:42, 0 users, load average: 0.00, 0.00, 0.00
Tasks: 101 total, 1 running, 99 sleeping, 1 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
MiB Mem : 1992.0 total, 1537.0 free, 235.0 used, 220.0 buff/cache
MiB Swap: 2047.9 total, 2047.9 free, 0.0 used. 1555.3 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 8788 5688 3828 S 0.0 0.3 0:02.14 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
4 root 20 0 0 0 0 I 0.0 0.0 0:00.00 rcu_par_gp
5 root 20 0 0 0 0 I 0.0 0.0 0:00.00 slub_flushwq
你还可以通过在 top
命令中按下 f
键来自定义显示的列。这将允许你添加、删除或重新排列列,以满足你的需求。
要退出 top
命令,请按 q
。
在这最后一步中,我们将使用 top
命令来分析系统性能,并识别任何潜在的瓶颈或问题。
让我们从监控系统的整体性能开始:
$ top
注意以下关键指标:
要进一步调查特定进程,你可以使用以下选项:
k
:终止一个进程r
:调整进程的优先级(renice)f
:管理显示的列o
:自定义排序顺序例如,要查看按 CPU 使用率排序的前 5 个进程:
$ top -o %CPU -n 5
示例输出:
top - 14:36:37 up 1 day, 12:48, 0 users, load average: 0.00, 0.00, 0.00
Tasks: 101 total, 1 running, 99 sleeping, 1 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
MiB Mem : 1992.0 total, 1537.0 free, 235.0 used, 220.0 buff/cache
MiB Swap: 2047.9 total, 2047.9 free, 0.0 used. 1555.3 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 8788 5688 3828 S 0.0 0.3 0:02.14 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
4 root 20 0 0 0 0 I 0.0 0.0 0:00.00 rcu_par_gp
5 root 20 0 0 0 0 I 0.0 0.0 0:00.00 slub_flushwq
这将帮助你识别任何消耗大量 CPU 资源的进程。
要退出 top
命令,请按 q
。
在本实验中,我们首先学习了 top
命令,这是一个用于监控 Linux 系统性能和资源利用的强大工具。我们探索了 top
命令显示的各种系统信息,包括运行时间、任务统计、CPU 和内存使用情况,以及最消耗资源的进程列表。我们还学习了如何通过使用不同的键来自定义 top
命令的输出,例如在每 CPU 和聚合 CPU 利用率之间切换、管理显示的列以及自定义进程列表的排序顺序。