讲师中心 微信公众号
AI工具推荐 视频效率加速

Linux怎么查看磁盘IO_Linux iostat与iotop命令教程【瓶颈】

胖瑶吖_4470

胖瑶吖_4470

发布时间:2026-03-02 11:39:27

|

264人浏览过

|

来源于php中文网

原创

可借助iostat与iotop协同分析:iostat -xk 1 5定位设备级IO饱和(%util≈100%),iotop -o实时锁定高IO进程,再结合df、lsof排查挂载点与文件访问,最后用dd+sync模拟验证。

linux怎么查看磁盘io_linux iostat与iotop命令教程【瓶颈】

如果您需要定位Linux系统中磁盘I/O性能瓶颈,但无法直观识别是整体设备负载过高还是具体进程引发的高IO,可借助iostat与iotop两个互补工具协同分析。以下是具体操作方法:

一、使用iostat监控整体磁盘I/O状态

iostat命令属于sysstat工具包,用于统计设备级I/O吞吐量、响应时间及CPU利用率,适用于发现是否存在全局性I/O压力。

1、确认sysstat是否已安装,若未安装则执行对应发行版安装命令:
Ubuntu/Debian系统:sudo apt-get install sysstat
CentOS/RHEL系统:sudo yum install sysstat
Fedora系统:sudo dnf install sysstat

2、运行基础命令查看实时汇总信息:iostat -xk 1 5(每秒刷新一次,共输出5次,-x启用扩展统计,-k以KB为单位)

3、重点关注输出中的%util列:若某设备%util持续接近或等于100%,表明该设备处于饱和状态;同时观察rKB/s与wKB/s数值是否异常偏高。

4、如需聚焦特定设备(如sda),使用:iostat -xk -p sda 1;若需查看所有分区,替换为-p ALL。

二、使用iotop定位高IO消耗进程

iotop可按进程或线程维度实时显示I/O带宽占用,弥补iostat无法下钻到进程层的不足,适用于快速锁定罪魁进程。

1、安装iotop工具:
Ubuntu/Debian:sudo apt-get install iotop
CentOS/RHEL:sudo yum install iotop

2、以root权限运行基础监控:sudo iotop(默认按IO带宽降序排列)

3、启用过滤模式仅显示活跃IO进程:sudo iotop -o

4、设置刷新间隔为2秒并限制显示行数:sudo iotop -o -d 2 -n 10

Obsidian (Linux)
Obsidian (Linux)

操作 Obsidian 库(纯 Markdown 笔记),并通过 notesmd-cli 实现自动化。

下载

5、在交互界面中按o键切换仅显示有IO活动的条目,按r键反转排序顺序,按q键退出。

三、结合df与lsof辅助判断IO来源

当iostat显示某挂载点所在设备IO异常,而iotop未明确指向某进程时,可通过文件系统空间使用与打开文件关联进一步排查。

1、检查各挂载点磁盘使用率与可用空间:df -h,重点关注使用率超过90%或可用空间极低的分区。

2、若怀疑日志写入导致IO激增,列出该挂载点下大文件:find /var/log -type f -size +100M -ls | sort -k7 -r

3、针对高IO设备对应的挂载路径(如/data),查找正在写入该路径的进程:sudo lsof +D /data 2>/dev/null | awk '$5 ~ /^REG/ && $9 ~ /\.log|\.tmp$/ {print $1,$2,$9}' | sort -k2 -n | uniq -c | sort -nr

4、若发现某进程频繁打开临时文件或日志,可结合其PID进一步查看打开文件详情:sudo lsof -p PID。

四、通过dd与sync模拟验证IO行为

为验证工具输出是否反映真实IO压力,可在测试环境中构造可控写入负载,观察iostat与iotop响应是否一致。

1、在目标磁盘分区(如/data)生成1GB测试文件:sudo dd if=/dev/zero of=/data/test_io bs=1M count=1024 oflag=direct

2、强制将缓存数据同步至磁盘以触发实际写入:sudo sync

3、在dd执行期间,另启终端运行:iostat -xk 1和sudo iotop -o -d 1,观察设备%util上升及dd进程IO占比变化。

4、完成测试后清理文件:sudo rm -f /data/test_io

热门AI工具

更多
切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

Seko
Seko Hot

一款AI视频创作工具,主要用于商汤科技推出的创编一体的AI短视频创作Agent,适合需要提升相关任务效率的用户。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

相关专题

更多
python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end=' ', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

3140

2023.09.27

python print用法与作用
python print用法与作用

本专题整合了python print的用法、作用、函数功能相关内容,阅读专题下面的文章了解更多详细教程。

269

2026.02.03

c语言中null和NULL的区别
c语言中null和NULL的区别

c语言中null和NULL的区别是:null是C语言中的一个宏定义,通常用来表示一个空指针,可以用于初始化指针变量,或者在条件语句中判断指针是否为空;NULL是C语言中的一个预定义常量,通常用来表示一个空值,用于表示一个空的指针、空的指针数组或者空的结构体指针。

549

2023.09.22

java中null的用法
java中null的用法

在Java中,null表示一个引用类型的变量不指向任何对象。可以将null赋值给任何引用类型的变量,包括类、接口、数组、字符串等。想了解更多null的相关内容,可以阅读本专题下面的文章。

1698

2024.03.01

counta和count的区别
counta和count的区别

Count函数用于计算指定范围内数字的个数,而CountA函数用于计算指定范围内非空单元格的个数。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

3488

2023.11.20

sort排序函数用法
sort排序函数用法

sort排序函数的用法:1、对列表进行排序,默认情况下,sort函数按升序排序,因此最终输出的结果是按从小到大的顺序排列的;2、对元组进行排序,默认情况下,sort函数按元素的大小进行排序,因此最终输出的结果是按从小到大的顺序排列的;3、对字典进行排序,由于字典是无序的,因此排序后的结果仍然是原来的字典,使用一个lambda表达式作为key参数的值,用于指定排序的依据。

1158

2023.09.04

线程和进程的区别
线程和进程的区别

线程和进程的区别:线程是进程的一部分,用于实现并发和并行操作,而线程共享进程的资源,通信更方便快捷,切换开销较小。本专题为大家提供线程和进程区别相关的各种文章、以及下载和课程。

4498

2023.08.10

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

4310

2023.06.21

Vite 项目如何打包和部署
Vite 项目如何打包和部署

Vite项目打包部署专题汇集生产构建、产物预览、输出目录、资源路径、Nginx与GitHub Pages部署及常见白屏和路由404问题的已审核文章,帮助读者完成上线流程。

60

2026.10.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn