top
: 显示进程信息和资源使用情况
top -c
: -c, 显示进程的完整命令
统计信息区
load average
: 平均负载, 是指系统的运行队列的平均利用率
三个数值分别是指 1分钟、5分钟、15分钟前, 满负荷状态的数字为 "1.00 * CPU核数"
(当前时间) (系统运行时间) (当前登录用户数) (平均系统负载。1分钟、5分钟、15分钟前)
top - 20:21:10 up 1 day, 18:25, 2 users, load average: 0.00, 0.00, 0.00
(进程总数) (正在运行进程) (正在睡眠) (已停止) (僵尸进程数)
Tasks: 19 total, 1 running, 18 sleeping, 0 stopped, 0 zombie
(CPU占用) (用户空间) (内核空间) () (空闲占比) (等待输入输出占比)
%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 : 12653.4 total, 10517.1 free, 1157.5 used, 978.8 buff/cache
(交换区)
MiB Swap: 4096.0 total, 4096.0 free, 0.0 used. 11235.5 avail Mem
进程信息区
PID
: 进程id
PR
: 优先级
NI
: nice值。负值表示高优先级,正值表示低优先级
VIRT
: 进程使用的虚拟内存总量。VIRT=SWAP+RES
RES
: 进程使用的、未被换出的物理内存大小。RES=CODE+DATA
SHR
: 共享内存大小
S
: 进程状态。
D=不可中断的睡眠状态
R=运行
S=睡眠
T=跟踪/停止
Z=僵尸进程
%CPU
: cpu 占用百分比
%MEM
: 物理内存占用百分比
(进程id)() (优先级)(nice值)(虚拟)(真实) (共享)(状态)
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
947 walker 20 0 7967296 773564 28652 S 0.3 6.0 2:06.13 java -jar halo-latest.jar
1 root 20 0 1240 772 516 S 0.0 0.0 0:05.82 /init
7 root 20 0 892 84 16 S 0.0 0.0 0:00.00 /init
8 root 20 0 892 84 16 S 0.0 0.0 0:00.26 /init
9 walker 20 0 10172 5044 3268 S 0.0 0.0 0:00.08 -bash
常见交互-修改内存单位
使用 E
更改统计信息区的内存单位, 如改成 GB
top - 21:17:44 up 1 day, 19:22, 0 users, load average: 0.00, 0.00, 0.00
Tasks: 23 total, 1 running, 22 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
GiB Mem : 12.4 total, 10.3 free, 1.1 used, 1.0 buff/cache
GiB Swap: 4.0 total, 4.0 free, 0.0 used. 11.0 avail Mem
使用 e
更改进程信息区的内存单位, 如改成 MB
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 1.2m 0.9m 0.5m S 0.0 0.0 0:05.86 init
7 root 20 0 0.9m 0.1m 0.0m S 0.0 0.0 0:00.00 init
8 root 20 0 0.9m 0.1m 0.0m S 0.0 0.0 0:00.26 init
9 walker 20 0 9.9m 4.9m 3.2m S 0.0 0.0 0:00.08 bash
551 root 20 0 1.2m 0.4m 0.0m S 0.0 0.0 0:00.00 init
常见交互-按内存占比排序
使用 M
将进程信息区的进程按 %MEM 从高到低排列
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
947 walker 20 0 7780.6m 755.8m 28.0m S 0.3 6.0 2:12.77 java
845 mysql 20 0 2032.3m 318.9m 32.8m S 0.3 2.5 0:45.83 mysqld
635 walker 20 0 20.1m 13.0m 6.8m S 0.0 0.1 0:03.32 python3.8
921 walker 20 0 20.1m 12.9m 6.7m S 0.0 0.1 0:03.20 python3.8
922 walker 20 0 20.1m 12.9m 6.7m S 0.0 0.1 0:03.10 python3.8
常见交互-按CPU占比排序
使用 P
将进程信息区的进程按 %CPU 从高到低排列
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
845 mysql 20 0 2032.3m 318.9m 32.8m S 0.3 2.5 0:46.11 mysqld
947 walker 20 0 7780.6m 755.8m 28.0m S 0.3 6.0 2:13.07 java
1 root 20 0 1.2m 0.9m 0.5m S 0.0 0.0 0:05.86 init
7 root 20 0 0.9m 0.1m 0.0m S 0.0 0.0 0:00.00 init
8 root 20 0 0.9m 0.1m 0.0m S 0.0 0.0 0:00.26 init
9 walker 20 0 9.9m 4.9m 3.2m S 0.0 0.0 0:00.08 bash