pidof:用于查找一个运行的程序的PID
-s表示只返回1个 pid
-x 表示同时返回运行给定程序的shell 的 pid
-o 表示告诉piod 表示忽略后面给定的 pid ,可以使用多个 -o
[root@GoGo ~]# pidof sshd
2139 1163
[root@GoGo ~]# ps-ef | grep sshd
root 1163 1 0 20:16? 00:00:00 /usr/sbin/sshd
root 2139 1163 0 20:20 ? 00:00:00 sshd: root@pts/1
top:显示linux进程信息默认是占用CPU百分比从高往低
第一行结果: 当前时间 运行时长 登陆到系统的用户数 load average:三个数据 过去1 分钟 10 分钟 15 分钟 CPU排队平均长度当数据超出3个时,CPU应付不了负载,队列长度总数量不能超过CPU数目
第二行:task:进程数目
第三行:CPU使用情况
us:用户空间占用CPU的百分比,sy:内核空间占用CPU百分比一般最高30% sy 70% us,应该让更多的CPU时间在用户空间
hi:硬件中断所占用CPU百分比
wa:等待IO输入输出占用CPU百分比
si:软件中断所占用CPU百分比
st: 虚拟化程序偷走的CPU百分比
第四行 Mem :内存使用信息 buff/cache用于缓存和缓冲的空间 真正的空闲空间=free + buff/cache
VIRT: 虚拟内存集
RES: 常驻内存集
SHR: 共享内存
排序快捷键: P: 默认 CPU百分比排序
M: 以占用内存百分比排序
T: 累计占用CPU时间排序
1: 每个CPU占用百分比详细信息
l: uptime 信息显示或者关闭
t:task 信息显示或者关闭
m:mem信息显示或者关闭
s: 修改刷新时间间隔
k:终止指定的进程
top选项:-d 指定刷新时间
-b 以批次方式显示
-n 显示多少批次
uptime: 显示系统时间,运行时长及平均负载
过去1 分钟 10 分钟 15 分钟 CPU排队平均长度
htop: top的升级版本
系统上没有自带 可以下载epel库
htop -l 选定一个进程所打开的所有文件
-s 进程发起的 系统调用
选项: -d 指定延迟时间间隔
-u username只显示指定用户的进程
-s colume:以指定字段进行排序
-t: 树状显示 层级关系
-a: 将选定的进程绑定到指定的CPU核心上
vmstat:报告虚拟内存的统计数据
vmstat 2 :2s 刷新一次
vmstat 2 3(显示3次)
结果分析:
procs: 进程
r:running 等待运行的进程个数 CPU上等待运行的任务队列长度 这个值是实时值
b:处于不可中断睡眠态进程的个数,被阻塞的任务队列的长度
memory 内存
swapd:交换内存的使用总量 对于服务器来说能不使用交换内存就不要使用
free:空闲的物理内存总量
buffer:用于缓冲的内存容量
cache:用户缓存的内存总量
swap
si:数据进入swap 中的数据速率 kb/s
so: 数据离开swap中的数据速率kb/s
io
bi: 从块设备读入数据到内存的速度kb/s
bo:从内存保存数据到硬盘
system
in:interrupts /s 中断速率 网络服务器会有很多io中断
cs:content switch 上下文切换
pmap
内存映射详细信息 ,抽取出/proc/进程号/进程信息 并显示
pmap pid
-x 拓展信息
glances: