linux卡顿常见处理方法

本文介绍了解决Linux服务器卡顿的常见方法,包括检查磁盘空间、内存和CPU使用情况,以及IO性能。通过df、du、free、top和iostat等命令,可定位并解决服务器性能瓶颈。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这两天测试服务器非常卡,项目完全跑不起来,花了一上午查找问题,记录一下linux服务器卡顿常见的解决方法。

1.查看磁盘空间
df -lh

如果是磁盘空间不足,则查找具体占用磁盘的文件

du -lh --max-depth=1
2.查看内存使用情况
free -m // -m内存单位为MB

当free值较小时,则要注意内存的使用,是否需要加内存

3.查看CPU使用情况
top

主要查看第三行CPU的使用情况

  • us, user:运行(未调整优先级的) 用户进程占用百分比
  • sy,system:运行内核进程占用百分比
  • ni,niced:运行已调整优先级的用户进程占用百分比
  • id,idle:空闲CPU百分比
  • wa,IO wait:用于等待IO完成占用百分比
  • hi:处理硬件中断的占用百分比
  • si:处理软件中断的占用百分比
  • st:这个虚拟机被hypervisor偷去的占用百分比

可用shift+p对进程使用CPU进行排序,找到CPU占用较高的进程
top命令还可以查看内存的使用情况,可用shift+m对进程使用内存情况进行牌型

4.查看IO使用情况
iostat -x 10   //每隔10s一次

该命令可以查看IO使用情况,也可以查看CPU占用情况
如果没有安装,可执行yum install -y sysstat安装

CPU 属性值

%user:运行(未调整优先级的) 用户进程占用百分比
%nice:运行已调整优先级的用户进程占用百分比
%system:运行内核进程占用百分比
%iowait:用于等待IO完成占用百分比
%steal:这个虚拟机被hypervisor偷去的占用百分比
%idle:CPU空闲时间百分比

如果%iowait的值过高,表示硬盘存在I/O瓶颈,
%idle值高,表示CPU较空闲,
如果%idle值高但系统响应慢时,有可能是CPU等待分配内存,此时应加大内存容量。

%idle值如果持续低于10,那么系统的CPU处理能力相对较低,表明系统中最需要解决的资源是CPU

磁盘属性值

rrqm/s:每秒进行 merge 的读操作数目,即 rmerge/s
wrqm/s:每秒进行 merge 的写操作数目,即 wmerge/s
r/s:每秒完成的读 I/O 设备次数,即 rio/s
w/s:每秒完成的写 I/O 设备次数,即 wio/s
rsec/s:每秒读扇区数,即 rsect/s
wsec/s:每秒写扇区数,即 wsect/s
rkB/s:每秒读 K 字节数,是 rsect/s 的一半,因为扇区大小为 512 字节
wkB/s:每秒写 K 字节数,是 wsect/s 的一半
avgrq-sz:平均每次设备 I/O 操作的数据大小(扇区)
avgqu-sz:平均 I/O 队列长度
await:平均每次设备 I/O 操作的等待时间(毫秒)
svctm:平均每次设备 I/O 操作的服务时间(毫秒)
%util:一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的

如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。
如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间
如果 await 远大于 svctm,说明I/O 队列太长,io响应太慢,则需要进行必要优化
如果avgqu-sz比较大,也表示有当量io在等待

若想看具体占用IO较高进程,可用iotop命令查看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值