如何找出哪个进程在读盘?

问题描述 投票:0回答:1

我在使用一个GCP虚拟机,时不时的就会失去与这个虚拟机的ssh连接。经过调查,我发现在我无法ssh连接到这个虚拟机的时候,磁盘IO读取量非常高,接近100MBs。

enter image description here

我很确定我没有运行任何需要做磁盘IO的进程。所以我需要找出是哪个进程做的。

如何才能做到这一点?我检查了varlog中的日志,没有可疑的日志。

由于读盘发生时我无法登录虚拟机,所以我需要一些方法把它放在后台。

linux google-cloud-platform disk
1个回答
0
投票

你可以用这样的方法 iotop --only (例如,cron)来查看什么进程在消耗IO。您应该可以安装 iotop 通过您的软件包管理器 (apt, yum, ...). 见此链接。

https:/www.tecmint.comiotop-monitor-linux-disk-io-activity-per-process

如果上面的链接失效了,你可以在crontab中添加这样的内容。

* * * * * root iotop -botqqq --iter=3 >> /var/log/iotop

每分钟检查每个进程的IO使用情况(你可以改为每5分钟,每10分钟等)。不过要注意不要把磁盘上的东西全部装满。/var/log/iotop 旋转木头或其他东西)。

© www.soinside.com 2019 - 2024. All rights reserved.