w/uptime 查看系统整体负载命令
04:38:05 当前系统时间
up 7 min 启动7 分钟
1 user 目前登录了几个用户,登录的用户可以从下面USER看到
USER 显示登录的用户
TTY 显示的是从网络登录还是本地登录
From 登录的一源
LOGIN@ 登录的时间
load average: 0.00, 0.01, 0.00
这三个数值分别表示:1分钟之内系统的平均负载,1分钟使用cpu活动进程的是多少,不一定是整数
5分钟之内系统的平均负载,
15分钟之内系统的平均负载
uptime (结果和w的第一行是一至的)
top查看进程使用资源情况
top -c 显示详细的进程信息
top -bn1 静态显示所有进程
q退出,数字1显示所有核cpu,大写字母M按内存使用排序
大写字母P按cpu使用排序
sar
yum install -y sysstat
sar -n DEV 查看网卡历史流量,10分钟一次
sar -n DEV 1 10 查看时时流量,一秒钟显示一次,一共显示十次
sar -q 查看历史负载
sar -b 历史磁盘读写
sar -n DEV -f /var/log/sa/sa22 查看22号当天的网卡流量
/var/log/sa有两种文件,一种sa一种sar,其中sa文件只能用sar -f查看,sar可以用cat查看
初次使用sar -n DEV会报错提示没有文件,是因为数据库文件还没有生成
vmstat 查看系统具体的负载
# vmstat 1 一秒钟显示一次,不停的显示,按ctrl+c结束
# vmstat 1 5 一秒钟显示一次,只显示5次,显示5次后自动结束
# vmstat 后面什么都不跟的话,只显示一次
一次不太准确,尽量显示多次
vmstat命令打印的结果共分为6部分:procs, memory, swap, io, system, cpu. 请重点关注一下r b si so bi bo几列
1)procs 显示进程相关信息
r :表示运行和等待cpu时间片的进程数,如果长期大于服务器cpu的个数,则说明cpu不够用了;
b :表示等待资源的进程数,比如等待I/O, 内存等,这列的值如果长时间大于1,则需要关注一下了;
2)memory 内存相关信息
swpd :表示切换到交换分区中的内存数量 ;
free :当前空闲的内存数量;
buff :缓冲大小,(即将写入磁盘的);
cache :缓存大小,(从磁盘中读取的);
3)swap 内存交换情况
si :由交换区写入到内存的数据量;
so :由内存写入到交换区的数据量;
4)io 磁盘使用情况
bi :从块设备读取数据的量(读磁盘);
bo: 从块设备写入数据的量(写磁盘);
5)system 显示采集间隔内发生的中断次数
in :表示在某一时间间隔中观测到的每秒设备中断数;
cs :表示每秒产生的上下文切换次数;
6)CPU 显示cpu的使用状态
us :显示了用户下所花费 cpu 时间的百分比;
sy :显示系统花费cpu时间百分比;
id :表示cpu处于空闲状态的时间百分比;
wa :表示I/O等待所占用cpu时间百分比;
st :表示被偷走的cpu所占百分比(一般都为0,不用关注);
总结:r b 查看cpu是否到达瓶颈
si so查看内存是否到达瓶颈
bi bo查看磁盘是否到达瓶颈
us内存使用的百分比
磁盘io
iostat -x 磁盘使用 关注%util
yum install -y sysstat (iostat和sar是同一个包)
iotop 磁盘使用
yum install -y iotop
查看那一个进程使用io比较大,和top有点像
free
free 默认是kb
total used free shared buff/cache available
Mem: 999696 567416 151004 1596 281276 255276
Swap: 2097148 40004 2057144
free -m 以m显示,但不显示单位
total used free shared buff/cache available
Mem: 976 553 147 1 275 249
Swap: 2047 39 2008
free -h 以m显示,显示单位
total used free shared buff/cache available
Mem: 976M 553M 147M 1.6M 275M 249M
Swap: 2.0G 39M 2.0G
buffer/cache区别
buffer缓冲,cache缓存
公式:total=used+free+buff/cache
avaliable包含free和buffer/cache剩余部分
cenos7和centos6显示的结果是不一样的,7显示的更加的直观