千家信息网

负载命令

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,命令w[root@ceshi ~]# w09:03:29 up 8:14, 1 user, load average: 0.10, 0.20, 0.30USER TTY FROM LOGIN@ IDL
千家信息网最后更新 2026年10月31日负载命令

命令w

[root@ceshi ~]# w

09:03:29 up 8:14, 1 user, load average: 0.10, 0.20, 0.30

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

root pts/0 192.168.134.1 09:02 0.00s 0.00s 0.00s w

主要分析红色字体,表示CPU负载 0.10表示一分钟cpu负载,该值一般不能大于cpu的核数,大于cpu核数,如一核表示cpu负载有点高,0.20表示五分钟cpu负载,0.30表示十五分钟cpu负载

查看CPU核数:红色字体,0表示单核,1表示双核

[root@ceshi ~]# cat /proc/cpuinfo

processor : 0

vendor_id : GenuineIntel

cpu family : 6

model : 69

model name : Intel(R) Core(TM) i5-4200U CPU @1.60GHz

命令uptime

和w命令差不多

[root@ceshi ~]# uptime

09:05:57 up 1 min, 1 user, load average: 0.21, 0.09, 0.03

命令vmstat

当使用w命令,查看到cpu一分钟负载有点高时,就要分析在哪个地方使用高了。就使用这个命令分析

[root@feiji ~]# vmstat

procs -----------memory---------- ---swap-------io---- --system-- -----cpu-----

r b swpd free buff cache si so bi bo in cs us sy id wa st

0 0 3516 69292 196588 513076 0 0 0 25 1 2 0 099 0 0

[root@feiji ~]# vmstat 1 5 #每秒钟显示一次,一共显示五次

procs -----------memory---------- ---swap-------io---- --system-- -----cpu-----

r b swpd free buff cache si so bi bo in cs us sy id wa st

0 0 3516 68920 196588 513480 0 0 0 25 1 2 0 099 0 0

0 0 3516 68904 196588 513480 0 0 0 0 166 275 1 198 0 0

0 0 3516 68780 196588 513480 0 0 0 124 179 317 0 099 1 0

0 0 3516 68780 196588 513480 0 0 0 0 170 301 0 0100 0 0

0 0 3516 68780 196588 513484 0 0 0 0 184 293 2 197 0 0

[root@feiji ~]# vmstat 2 #一直监控,两秒显示一次

procs -----------memory---------- ---swap-------io---- --system-- -----cpu-----

r b swpd free buff cache si so bi bo in cs us sy id wa st

0 0 3516 67928 196592 514288 0 0 0 25 1 2 0 099 0 0

0 0 3516 67920 196592 514296 0 0 0 0 134 214 0 199 0 0

r(running、运行):表示运行和等待cpu时间片的进程数。如果长期大于服务器cpu个数,则说明cpu不够用了;

b(block、阻塞):表示等待资源的进程数,

swpd:虚拟内存已使用的大小,如果大于0,表示你的机器物理内存不足了,如果不是程序内存泄露的原因,那么你该升级内存了或者把耗内存的任务迁移到其它机器

free:空闲的物理内存的大小

buff:Linux、unix系统是用来存储目录里面有什么内容,权限等得缓存

cache:cache直接用来记忆我们打开的文件,给文件做缓冲,把空闲的物理内存的一部分拿来做文件和目录的缓存,是为了提高程序执行的性能,当程序使用内存时,buffer/cache会很快被使用

si :每秒从磁盘读入虚拟内存的大小,如果这个大于0,表示物理内存不够用或者内存泄露了,要查找内存进程解决掉,我的机器内存充裕,一切正常

so :每秒虚拟内存写入磁盘的大小,如果这个值大于0,同上

bi :从块设备读取数据的量(读磁盘);

bo:从块设备写入数据的量(写磁盘);

bi:块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是1024byte,我本机上没什么IO操作,所以一直是0,但是我曾在处理拷贝大量数据(2-3T)的机>器上看过可以达到140000/s,磁盘写入速度差不多140M每秒

bo:块设备每秒发送的块数量,例如我们读取文件,bo就要大于0。bi和bo一般都要接近0,不然就是IO过于频繁,需要调整。

si:从交换分区到内存,so:从内存到交换分区;bi:从硬盘到内存,bo:从内存到硬盘;

这样理解是否正确:si和so和swpd的值一直增加,说明内存不足,因为要把内存某些数据交换出去。而bi bo值大,说明读写硬盘频繁,再大说明硬盘IO瓶颈。考虑陈列卡或固态硬盘、减少磁>盘IO操作

cs:每秒上下文切换次数,例如我们调用系统函数,就要进行上下文切换,线程的切换,也要进程上下文切换,这个值要越小越好,太大了,要考虑调低线程或者进程的数目,例如在apache和nginx这种web服务器中,我们一般做性能测试时会进行几千并发甚至几万并发的测试,选择web服务器的进程可以由进程或者线程的峰值一直下调,压测,直到cs到一个比较小的值,这个进程和

线程数就是比较合适的值了。系统调用也是,每次调用系统函数,我们的代码就会进入内核空间,导致上下文切换,这个是很耗资源,也要尽量避免频繁调用系统函数。上下文切换次数过多表

示你的CPU大部分浪费在上下文切换,导致CPU干正经事的时间少了,CPU没有充分利用,是不可取的。

us :cpu占用的百分比,这个大于50,就要找原因了,看哪个进程占用cpu

us:用户CPU时间,我曾经在一个做加密解密很频繁的服务器上,可以看到us接近100,r运行队列达到80(机器在做压力测试,性能表现不佳)。

sy:系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。

id:空闲 CPU时间,一般来说,id +us + sy = 100,一般我认为id是空闲CPU使用率,us是用户CPU使用率,sy是系统CPU使用率。

wt:等待IO CPU时间。

命令top

当使用w或者vmstat命令的时候,查看系统负载情况,top可以分析哪个进程占用cpu高

每三秒显示一次,按q退出

用法:top -bn1 #静态显示进程的负载,可以写入脚本里

[root@feiji ~]# top

top - 19:01:55 up 170 days, 8:15, 1 user, load average: 0.00, 0.01,0.00

Tasks: 98 total, 2 running, 96 sleeping, 0 stopped, 0 zombie

Cpu(s): 0.3%us, 0.7%sy, 0.0%ni, 98.7%id, 0.3%wa, 0.0%hi, 0.0%si, 0.0%st

Mem: 1030600k total, 980784kused, 49816k free, 196864k buffers

Swap: 2097148k total, 3516kused, 2093632k free, 530960k cached

PIDUSER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

15624 root 20 0 7056 5904 432 S 0.3 0.6 135:18.16 sap1002

15627 root 20 0 31464 12m 664 R 0.3 1.3 282:13.96 sap1005

1root 20 0 2900 936 796 S 0.0 0.1 0:10.05 init

2root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd

3root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0

4root 20 0 0 0 0 S 0.0 0.0 0:56.08 ksoftirqd/0

前面几行可以看到cpu负载,内存的使用used,空闲内存free,和buffers,cached

下面的有PR(0--39),NI(-20--19)

VIRT:虚拟内存

RES:真实内存

SHR:共享内存

%CPU :占用cpu的百分比

%MEM:占领内存百分比

COMMAND:具体的进程

命令sar

查看网卡流量

首先要先安装

yum install -y sysstat

刚才是可能会显示"无法打开 /var/log/sa/sa08: 没有那个文件或目录",过10分钟才能正常显示

[root@feiji ~]# sar -n DEV

Linux 2.6.32-504.30.3.el6.i686 (feiji) 2016年11月08日 _i686_ (1 CPU)

20时20分01秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s

20时30分01秒 lo 0.13 0.13 0.01 0.01 0.00 0.00 0.00

20时30分01秒 eth0 1.35 1.40 0.15 0.22 0.00 0.00 0.00

平均时间: lo 0.13 0.13 0.01 0.01 0.00 0.00 0.00

平均时间: eth0 1.35 1.40 0.15 0.22 0.00 0.00 0.00

其中主要看eth0(外网网口)的rxkB/s(进网口)、txkB/s(出网口)

rxkB/s(每秒收取的数据量)

txkB/s(每秒发送的数据量)

0.15kb/s / 1000 = 0.00015mb/s

带宽等于0.00015mb/s * 8bi t= 0.0013m

须知道1byt = 8bit

常说的网线带宽单位就是比特10m的带宽都是已经乘于8

10 / 8 = 1.25 就是它的下载速度

比特是网卡上的进量单位

计算机单位有字节(byt),KB,MB,GB

sar -q #能够查看历史负载

sar -b #可以查看当前的磁盘状态

sar -p #可以查看cpu的使用情况

命令free

[root@feiji ~]# free -m

total used free shared buffers cached

Mem: 1006 961 44 0 187 541

-/+ buffers/cache: 232 774

Swap: 2047 4 2043

Men 表示内存,total表示总数,used表示使用量,free表示剩余内存

真正的剩余内存看-/+ buffers/cache: free=744= 44+187+541

第二部分(-/+ buffers/cache):

(-buffers/cache) used内存数:232M (指的第一部分Mem行中的used - buffers - cached)

(+buffers/cache) free内存数: 774M (指的第一部分Mem行中的free +buffers + cached)

可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数.

内存 进程 命令 系统 时间 磁盘 切换 上下 上下文 数据 设备 频繁 大小 文件 硬盘 空闲 就是 服务器 机器 物理 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 科技金融是不是互联网金融 智能科技公司是互联网公司吗 互联网与科技发展 深圳互联网络科技有限公司 银优互联网科技有限公司 美国互联网黑科技 菲比寻常互联网科技 互联网科技公司做什么 四个字互联网科技公司取名 太原新华互联网科技学校怎么样 深圳国际航运科技和互联网 广州慧亚互联网科技怎么样 呼和浩特新华互联网科技学院 朱啸虎曾投资哪些互联网科技企业 互联网科技接地气 唐山双旺合互联网科技产业园 青岛易易互联网科技 安徽九吞吴互联网科技有限公司 现代科技的标志之一的互联网 互联网科技创业有什么好项目 科技创新与互联网经济 智网互联网科技 互联网高科技股票 互联网科技股午盘股票涨跌 深圳国际航运科技和互联网 宁夏科技产业互联网案例 宜昌元轩互联网科技有限公司 米聚互联网科技南京有限公司排面 本届互联网博览会上的黑科技 21世纪互联网科技成就
0