性能·磁盘 / 命令文档

Linux iowait 诊断

$ iowait 9 个章节 Linux 命令详解

概述

系统性排查I/O等待问题的专业工具

1快速状态检查

系统整体状态

top -b -n1 | head -20

查看CPU、内存使用情况和iowait百分比

vmstat 1 5

观察wa(iowait)列的变化趋势

iostat -x 1 5

实时I/O统计,关注%util和await

2进程级别分析

I/O密集进程识别

iotop -o -d 1

实时显示I/O活跃进程排序

pidstat -d 1 5

按进程显示磁盘I/O统计

ps aux --sort=-%cpu | head -20

找出CPU使用率最高的进程

3磁盘性能分析

磁盘设备状态

lsblk -f

查看磁盘分区和文件系统

df -h

检查磁盘空间使用情况

hdparm -tT /dev/sda

测试磁盘读取性能

smartctl -a /dev/sda

检查硬盘健康状态

4文件系统诊断

文件系统分析

lsof | grep -E "(REG|DIR)" | wc -l

统计打开的文件数量

fuser -v /path/to/directory

查看访问特定目录的进程

find /var/log -name "*.log" -size +100M

查找大型日志文件

5网络I/O检查

网络相关I/O

netstat -i

查看网络接口统计

ss -tuln

检查监听端口和连接状态

iftop -i eth0

实时网络带宽使用情况

6系统调用追踪

深度分析

strace -p PID

统计进程系统调用(替换PID)

perf top -g

实时性能分析和调用图

sysctl -a | grep vm

查看虚拟内存参数配置

iowait 问题排查流程

第一步:确认iowait确实很高 (>20%)

第二步:识别I/O密集进程和设备

第三步:分析具体I/O模式(随机/顺序读写)

第四步:检查硬件状态和文件系统

第五步:优化或解决根本原因

常用诊断工具

iotop

实时I/O监控

iostat

I/O统计报告

vmstat

虚拟内存统计

atop

高级系统监控

nmon

性能监控工具

perf

性能分析器

同分类 · 其他命令文档