为什么在没有用户交互的情况下调用 dumpe2fs?

为什么在没有用户交互的情况下调用 dumpe2fs?

我已经发布一个问题这是因为我的硬盘无缘无故地不断旋转,我想找出是什么过程导致它们旋转。

在对该问题的评论中,我被告知使用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...

相关内容