Redian新闻
>
Linux 查看 IO 状态的常用命令

Linux 查看 IO 状态的常用命令

公众号新闻

链接:https://www.cnblogs.com/arthinking/p/14450337.html

介绍下Linux的3个常用I/O相关命令,解决I/O压力过大问题时用iostat,查看磁盘的I/O状态用iotop,查看I/O进程排名用lsof

一、iostat

iostat工具将对系统的磁盘操作活动进行监视。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。要想使用iostat命令,需要安装sysstat软件

[root@localhost ~]# yum -y install sysstat[root@localhost ~]# iostatLinux 5.14.0-162.6.1.el9_1.x86_64 (localhost.localdomain)       12/02/22        _x86_64_        (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle1.75 0.02 5.84 0.60 0.00 91.79
Device tps kB_read/s kB_wrtn/s kB_dscd/s kB_read kB_wrtn kB_dscddm-0 73.70 2078.84 358.65 0.00 162919 28107 0dm-1 1.26 29.96 0.00 0.00 2348 0 0nvme0n1 104.45 2809.71 385.01 0.00 220197 30173 0sr0 1.03 40.12 0.00 0.00 3144 0 0

输出信息:

avg-cpu段

%user: 用户程序占用CPU的百分比%nice: nice操作占用CPU的百分比%system: 系统占用CPU的百分比%iowait: CPU等待硬件I/O时占用CPU百分比%idle: CPU空闲时间的百分比

Device段

tps: 每秒钟I/O请求数kB_read /s: 每秒读取的块数kB_wrtn/s: 每秒写入的块数kB_read: 读入的块总数kB_wrtn: 写入的块总数

常用参数

-c 仅显示CPU统计信息,与-d互斥-d 仅显示磁盘统计信息,与-c互斥-k 以K为单位显示每秒的磁盘请求数,默认单位块-p 设备名 | ALL,只显示某个设备的信息,或者全部设备-x 输出扩展信息sec 间隔sec秒显示一次

二、iotop

iotop用来监视磁盘 I/O 使用状况的 top 类工具,具有与 top 相似的 UI,其中包括 PID、用户、I/O、进程等相关信息。iotop不是系统自带的命令,要想使用iotop命令,需要安装iotop软件。

[root@localhost ~]# yum -y install iotop[root@localhost ~]# iotopTotal DISK READ :       0.00 B/s | Total DISK WRITE :       0.00 B/sActual DISK READ:       0.00 B/s | Actual DISK WRITE:       0.00 B/sTID  PRIO  USER     DISK READ DISK WRITE>    COMMAND                                                                                                     1 be/4 root        0.00 B/s    0.00 B/s systemd --switched-root --system --deserialize 282 be/4 root        0.00 B/s    0.00 B/s [kthreadd]3 be/4 root        0.00 B/s    0.00 B/s [rcu_gp]4 be/4 root        0.00 B/s    0.00 B/s [rcu_par_gp]5 be/4 root        0.00 B/s    0.00 B/s [netns]7 be/4 root        0.00 B/s    0.00 B/s [kworker/0:0H-events_highpri]9 be/4 root        0.00 B/s    0.00 B/s [kworker/0:1H-events_highpri]10 be/4 root        0.00 B/s    0.00 B/s [mm_percpu_wq]12 be/4 root        0.00 B/s    0.00 B/s [rcu_tasks_kthre]13 be/4 root        0.00 B/s    0.00 B/s [rcu_tasks_rude_]14 be/4 root        0.00 B/s    0.00 B/s [rcu_tasks_trace]15 be/4 root        0.00 B/s    0.00 B/s [ksoftirqd/0]16 be/4 root        0.00 B/s    0.00 B/s [rcu_preempt]17 be/4 root        0.00 B/s    0.00 B/s [migration/0]19 be/4 root        0.00 B/s    0.00 B/s [cpuhp/0]20 be/4 root        0.00 B/s    0.00 B/s [cpuhp/1]

通过输出结果,我们可以清楚地知晓是什么程序在读写磁盘,速度以及命令行,pid 等信息。

常用参数

-b 批量显示,无交互。主要用作记录到文件-n NUM 显示NUM次,主要用于非交互式模式-d SEC 间隔SEC秒显示一次-p PID 监控的进程pid-u USER 监控的进程用户


三、lsof

lsof(list open files)是一个列出当前系统打开文件的工具,lsof 需要访问核心内存和各种文件,所以必须以root身份执行才能充分发挥优势。lsof不是系统自带的命令,要想使用lsof命令,需要安装lsof软件。

[root@localhost ~]# yum -y install lsof[root@localhost ~]# lsofCOMMAND    PID TID TASKCMD     USER   FD      TYPE             DEVICE SIZE/OFF       NODE NAMEsystemd      1                 root  cwd       DIR              253,0      235        128 /systemd      1                 root  rtd       DIR              253,0      235        128 /systemd      1                 root  txt       REG              253,0  1945080   67508326 /usr/lib/systemd/systemdsystemd      1                 root  mem       REG              253,0    45416   67348788 /usr/lib64/libffi.so.8.1.0systemd      1                 root  mem       REG              253,0   153600   67348802 /usr/lib64/libgpg-error.so.0.32.0systemd      1                 root  mem       REG              253,0    28568   67348896 /usr/lib64/libattr.so.1.1.2501systemd      1                 root  mem       REG              253,0   102568   67348636 /usr/lib64/libz.so.1.2.11systemd      1                 root  mem       REG              253,0    32528   67348775 /usr/lib64/libcap-ng.so.0.0.0systemd      1                 root  mem       REG              253,0    41064   67420376 /usr/lib64/libeconf.so.0.4.1systemd      1                 root  mem       REG              253,0   637880   67348851 /usr/lib64/libpcre2-8.so.0.11.0systemd      1                 root  mem       REG              253,0   906176   67323555 /usr/lib64/libm.so.6systemd      1                 root  mem       REG              253,0   178744   67348640 /usr/lib64/liblzma.so.5.2.5systemd      1                 root  mem       REG              253,0   882384   67348653 /usr/lib64/libzstd.so.1.5.1systemd      1                 root  mem       REG              253,0  1293840   67348792 /usr/lib64/libp11-kit.so.0.3.0systemd      1                 root  mem       REG              253,0  4459096   67420748 /usr/lib64/libcrypto.so.3.0.1systemd      1                 root  mem       REG              253,0   144144   67348822 /usr/lib64/liblz4.so.1.9.3systemd      1                 root  mem       REG              253,0  1305536   67348868 /usr/lib64/libgcrypt.so.20.4.0systemd      1                 root  mem       REG              253,0   201832   67348663 /usr/lib64/libcrypt.so.2.0.0systemd      1                 root  mem       REG              253,0    36944   67348643 /usr/lib64/libcap.so.2.48

参数说明:

PID:进程标识符
USER:进程所有者
FD:文件描述符
TYPE:文件类型,如DIR、REG等
DEVICE:指定磁盘的名称
SIZE:文件的大小
NODE:索引节点
NAME:打开文件的确切名称常用参数lsofabc.txt显示开启文件abc.txt的进程

常见使用方法:

lsof -c abc 显示abc进程现在打开的文件lsof -p 1234 列出进程号为1234的进程所打开的文件lsof -g gid 显示归属gid的进程情况lsof +d /DIR/ 显示DIR目录下被进程打开的文件

END

官方站点:www.linuxprobe.com

Linux命令大全:www.linuxcool.com

刘遄老师QQ:5604215

Linux技术交流群:2636170

(新群,火热加群中……)

想要学习Linux系统的读者可以点击"阅读原文"按钮来了解书籍《Linux就该这么学》,同时也非常适合专业的运维人员阅读,成为辅助您工作的高价值工具书!


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
大炮专家布尔Linux之父 Linus Torvalds 编译 arm64 Linux 内核又有 “ 新欢 ”:Ampere AArch64linux 常用性能优化linux监控命令全覆盖(图文说明)Linux 监控命令全覆盖(图文说明)linux查看端口占用情况高效linux 日志管理:journalctl命令Linux —— curl 命令使用代理、以及代理种类介绍新雨美股基本面 - 2024_03_23 * 晨报 * 51Talk去年净亏损缩窄至1400万美元,预计今年一季度净收入增逾四成。退税必看!一文教会你如何查看联邦退税状态!回国杂记(2307)高中毕业六十年校友相聚在武昌南湖晨鸟优惠!暑假保持学习状态的捷径:数学/英文/高中各科目辅导这款洗出肌肤健康态的国货洗面奶你放心试,试用小样不满意无理由退未拆正装!巧用 20 个 Linux 命令贴士与技巧,让你生产力瞬间翻倍?比特币新浪潮: 理解比特币生态的技术创新与市场潜力保姆教程系列:Git 实用命令详解Kali Linux常用的工具,有你知道的么?统一所有模态的3D范式来了!Any2Point:仅需训练1%的参数量,超越SOTA!linux网络运维命令--route章子怡压轴亮相戛纳红毯!官方清场排面拉满,好状态的秘密全靠…Linux 有多重要?这么说吧,只要是干 IT 相关的,学 Linux 是绕不过去的 “ 坎儿 ”提升效率的Linux实用命令大全聊一台性价比高到变态的游戏本一代绝色,竟演过这么变态的片?马云:所有成功的企业,一定有着变态的执著和热爱盘点英国的常用火车路线linux内核常用调优参数最航运 | 美东巴尔的摩港口紧急状态的蝴蝶效应!CVPR 2024 | 北大&电子科大提出RCBEVDet:毫米波雷达-相机多模态的感知架构openstack 常用命令5 个常用 tcpdump 抓包命令,值得网工收藏!CVPR 2024 | 多模态合作学习的新视角:样本级模态的评估与协同在Linux中,如何在Linux中使用Ansible进行自动化部署?熵泱——第五十一章
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。