需结合iostat、iotop、pidstat、系统监视器和top协同诊断:iostat查磁盘io瓶颈,iotop定位高io进程,pidstat分析进程io分布,系统监视器图形化监控,top观察iowait值判断io等待。

如果您在麒麟操作系统中需要同时掌握磁盘IO负载与进程资源占用情况,以排查系统响应迟缓、读写卡顿或高负载异常,则需结合底层命令与图形化工具进行协同诊断。以下是覆盖设备级IO、进程级IO及可视化管理的完整操作路径:
一、使用iostat查看磁盘IO实时负载
iostat直接读取/proc/diskstats内核统计,提供每秒IOPS、吞吐量、%util利用率及读写响应时间(r_await/w_await),是判断磁盘是否存在瓶颈的核心依据。
1、确认sysstat套件已安装:执行yum list installed | grep sysstat,若无输出则运行sudo yum install -y sysstat。
2、启用后台数据采集服务:执行sudo systemctl enable sysstat && sudo systemctl start sysstat。
3、启动实时监控:输入iostat -x -d 1,其中-x启用扩展指标,-d仅显示磁盘设备,1表示每秒刷新一次。
4、识别异常信号:%util持续高于80%且w_await超过10ms,表明磁盘处于高压力状态;若%util接近100%但r/s与w/s趋近于0,则可能存在硬件或总线故障。
二、使用iotop定位高IO消耗进程
iotop以进程/线程为单位展示实时IO带宽占用,可精确识别占用磁盘读写资源最多的用户态程序或内核线程,适用于单点IO争用场景的快速归因。
1、安装iotop:执行sudo yum install -y iotop(Kylin V10 RHEL系)或sudo apt-get install iotop(Debian系)。
2、以特权模式运行:输入sudo iotop -o -d 1,其中-o仅显示活跃IO进程,-d 1设定刷新间隔为1秒。
3、观察TOP项:默认按IO带宽降序排列,重点关注IO>列数值持续高于40MB/s的进程。
4、切换排序维度:按左右箭头键切换排序字段(如IO>、SWAPIN、IO_RATE),按r反转顺序,按p切换进程/线程粒度。
三、使用pidstat分析进程IO分布
pidstat提供每个进程的KB_rd/s(每秒读字节数)、KB_wr/s(每秒写字节数)、IO等待时间及上下文切换频次,适用于多进程混合IO场景下的精细化归因。
1、执行采样命令:输入pidstat -d 1,该命令每秒输出一次各进程IO吞吐量。
2、识别异常峰值:关注KB_wr/s列,若某PID连续3次采样均维持>50MB/s写入速率,即为首要排查目标。
3、关联内核行为:当jbd2类内核线程IO偏高时,说明ext4日志提交频繁,需检查对应挂载点是否存在大量小文件同步写操作。
4、保存历史记录:添加-h参数生成人类可读格式,并配合2>&1 | tee io_log.txt导出完整会话供回溯。
四、使用系统监视器图形化查看进程与资源
系统监视器是银河麒麟桌面版预装的图形化任务管理器,界面类似Windows任务管理器,支持实时CPU/内存/磁盘IO/网络流向监控、进程排序筛选及强制结束操作,适合所有用户快速上手。
1、点击屏幕左下角“开始菜单”,在搜索框中输入系统监视器并回车打开。
2、默认进入“进程”选项卡,列表显示所有运行中进程的PID、名称、启动用户、CPU占用率、内存使用量、优先级、磁盘IO速率及网络流向消耗等核心信息。
3、点击列标题(如CPU%、内存或磁盘IO)可按该字段升序/降序排列,便于识别资源占用最高的进程。
4、右键单击目标进程,在弹出菜单中选择强制结束进程释放资源;也可选择设置优先级调整调度权重。
5、切换至“资源”选项卡,可同步观察处理器、内存、交换空间及网络流量的实时负载曲线。
五、使用top命令终端实时监控进程与IO等待
top命令提供动态刷新的终端视图,除显示CPU/内存占用外,顶部第一行load average后紧跟的iowait值(%wa)可快速判断系统是否处于IO等待瓶颈状态。
1、打开终端(快捷键Ctrl + Alt + T),输入top并回车。
2、观察顶部第二行中%wa(iowait)值是否持续高于30%,若达90%以上,表明CPU大量时间在等待IO完成。
3、按P键按CPU使用率降序排列,按M键按内存使用率降序排列,按Shift+I键切换IO等待排序模式(部分版本需先按f添加%WAIT字段)。
4、若需终止某进程,按k键,随后输入目标进程PID及信号值(默认15,即SIGTERM)。











