Linux查看系统资源占用
top命令
通过top命令查看CPU,内存使用情况,类似Windows的任务管理器。
语法:top [-p -d -c -n -b -i -u...]
- -p:只显示某个进程的信息。
- -d:设置刷新时间,默认是5s。
- -c:显示产生进程的完整命令,默认是进程名。
- -n:指定刷新次数,比如top -n 3,刷新输出3次后退出。
- -b:以非交互全屏模式运行,以批次的方式执行top,一般配合-n指定输出几次统计信息。
- -i:不显示任何闲置(idle)或无用(zombie)的进程。
- -u:查找特定用户启动的进程。
top输出信息
内容详情
-
第一行显示了当前系统的时间、运行时间、登录用户数和平均负载(1分钟、5分钟和15分钟)。
top - 16:01:57 up 1:15, 4 users, load average: 0.15, 0.10, 0.12
- top:当前时间。
- up:机器运行了多长时间。
- users:当前用户数。
- load average:系统负载,即任务队列的平均长度。三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。
-
第二行显示了系统中的任务总数,其中正在运行的任务、睡眠的任务、停止的任务和僵尸任务的数量。
Tasks: 234 total, 1 running, 233 sleeping, 0 stopped, 0 zombie
- Tasks:当前有多少进程。
- running:正在运行的进程数。
- sleeping:正在休眠的进程数。
- stopped:停止的进程数。
- zombie:僵尸进程数。
这里running越多,服务器自然压力就越大。
-
第三行显示了CPU的使用情况,包括用户空间使用率(us)、系统空间使用率(sy)、优先级改变的进程使用率(ni)、空闲时间(id)、等待磁盘I/O的时间(wa)、硬中断时间(hi)、软中断时间(si)和虚拟化时间(st)。
-
第四行显示了系统的物理内存和交换空间的使用情况。
-
进程信息
- PID:进程的ID号。
- USER:进程所属的用户。
- PR:进程的优先级。
- NI:进程的优先级值。
- VIRT:进程的虚拟内存使用量。
- RES:进程的实际内存使用量。
- SHR:进程的共享内存使用量。
- S:进程的状态(R表示运行,S表示睡眠,Z表示僵尸进程)。
- %CPU:进程的CPU使用率。
- %MEM:进程的内存使用率。
- TIME+:进程的累计CPU使用时间。
- COMMAND:进程的命令名称。
top常用交互选项
-
空格键:暂停或恢复刷新。
-
q键:退出top命令。
-
k键:杀死选中的进程。
-
r键:修改进程的优先级。
-
s键:修改刷新间隔。
-
f键:显示或隐藏不同的字段。
-
o键:按照指定字段进行排序。
-
'>'键:按照CPU使用率进行排序。
-
<键:按照内存使用率进行排序。
-
H键:显示或隐藏线程信息。