Play Open
Loading Please wait Loading Please wait Loading Please wait Loading Please wait Loading Please wait Loading Please wait

Linux 查看进程占用cpu/内存/io信息

Linux 查看进程占用cpu/内存/io信息

top

Display dynamic real-time information about running processes.

More information: https://manned.org/top.

单词解释:

PID: 进程ID

USER: 进程所有者

PR: 进程的优先级别(越小越优先执行)

NI: Nice值,进程用户态优先值[-20, 20)

VIRT: 进程占用的虚拟内存

RES: 进程占用的物理内存

SHR: 进程使用的共享内存

S: 进程的状态。S: 休眠,R: 正在运行, Z: 僵死状态, N表示该进程优先值为负数

%CPU: 进程占用CPU使用率

%MEM: 进程使用的物理内存和总内存的百分比

TIME+: 该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。

COMMAND: 进程启动命令名称

常用命令:

P: 按%CPU使用率进行排序

T: 按TIME+进行排序

M: 按%MEM排序

/proc/[pid]目录

获取程序PID

lsof -i:8000

假如我获取的服务端口8000的进程pid为51497

查看内存使用情况

$ cat /proc/51497/status | grep VmRSS

VmRSS: 247720 kB

我们可以进入这个目录查看可用信息

cd /proc/51497/

ls -l

常用(N为进程的PID)

$ /proc/N/cmdline # 进程启动命令

$ /proc/N/environ # 进程环境变量列表

$ /proc/N/stat # 进程状态

$ /proc/N/statm # 进程使用的内存的状态

$ /proc/N/status # 进程状态信息,比stat/statm更具有可读性

连接(所有目录中用ls -l 查看)

$ /proc/N/cwd # 链接到进程当前工作目录

$ /proc/N/exe # 链接到进程执行命令文件

$ /proc/N/root # 链接到进程根目录

内存

消耗内存前10进程$ ps aux | sort -K4nr | head -n 10

查看内存使用排序$ top

然后按M

查看swap$ free -h

或$ cat /proc/swaps

查看某个进程的内存占用

获取进程PID

$ lsof -i:6379

或者

ps -aux | grep redis

假如获取的 redis 的 PID 为 1729

那么获取内存使用情况

$ cat /proc/1729/status | grep VmRSS

或者

$ top -p 1729

CPU

消耗CPU前10的进程

$ ps aux | grep sort -K3nr | head -n 10

查看CPU占用排序

$ top # 然后按P

IO

每隔1s查询一次共查询10次

$ iostat 1 10

路由信息

查看主机路由信息

$ netstat -rn

Posted in 卡池解析
Previous
All posts
Next