我已经发布一个问题这是因为我的硬盘无缘无故地不断旋转,我想找出是什么过程导致它们旋转。
在对该问题的评论中,我被告知使用iosnoop
哪个(没有任何参数或开关)在其中一个硬盘随机旋转的几分钟内生成几百行。复制输出并告诉 Emacs 删除与 SD 卡对应的设备号的所有行(关于我不关心的访问),我留下了这个:
COMM PID TYPE DEV BLOCK BYTES LATms
dumpe2fs 19467 R 8,0 272648 4096 23.25
^C
Ending tracing...
由于只剩下 1 行数据,因此可以合理地假设罪魁祸首已被识别。但为什么是dumpe2fs
随机调用呢?比这更重要的是:如何让它停止,最好不破坏东西(重命名相应文件的肮脏解决方案可能会这样做)?
手动运行sudo dumpe2fs /dev/sda1
确实会使相应的 HDD 旋转。然而,该命令确实已经返回其输出并在 HDD 旋转之前终止(没有我在 HDD 旋转时访问文件时遇到的大约 7 秒的延迟)。
我使用 Ubuntu Mate 16.04。
答案1
要找出dumpe2fs
运行的原因,您可以将其替换为记录器。重命名/sbin/dumpe2fs
为,并创建一个名为contains 的/sbin/dumpe2fs.real
脚本/sbin/dumpe2fs
#!/bin/sh
echo dumpe2fs "$@" >> /var/log/dumpe2fs-search.log
date >> /var/log/dumpe2fs-search.log
pstree >> /var/log/dumpe2fs-search.log
exec dumpe2fs.real "$@"
然后查看日志文件以确定正在运行的内容dumpe2fs
...