inotify-tools ist eine einfache Möglichkeit, dies zu tun. Es gibt mehrere Beispiele auf ihrer Website, die in der Lage wären, das zu tun, was Sie wollen (ein wirklich einfaches Beispiel finden Sie im Beispiel von inotifywatch).
Versuchen Sie, iotop
auszuführen vielleicht? Ich habe es in der Vergangenheit als nützlich empfunden.
Ein weiterer Tipp:Verwenden Sie Systemtap, es gibt eine Reihe von Prüfskripten auf der Website von systemtap, die nützlich genug sind, um den Übeltäter zu finden.
In einem ganz anderen Fall
Wenn Sie herausfinden möchten, welcher Prozess das Hochfahren der Festplatte verursacht hat, können Sie Informationen sammeln, indem Sie das Flag /proc/sys/vm/block_dump
setzen .Wenn dieses Flag gesetzt ist, meldet Linux alle Lese- und Schreiboperationen, die stattfinden, und alle Blockverunreinigungen, die an Dateien vorgenommen wurden. Dies macht es möglich, zu debuggen, warum eine Festplatte hochgefahren werden muss, und die Batterielebensdauer noch weiter zu verlängern. Die Ausgabe von block_dump wird in die Kernel-Ausgabe geschrieben und kann mit "dmesg" abgerufen werden oder in Ihrer Syslog-Kern-Einrichtung nach dem Ziel der Debug-Meldungen suchen. Im Allgemeinen sollte es /var/log/debug
sein . Wenn Sie block_dump verwenden und Ihr Kernel-Logging-Level auch Kernel-Debugging-Meldungen enthält, möchten Sie wahrscheinlich klogd ausschalten, da sonst die Ausgabe von block_dump protokolliert wird, was zu einer Festplattenaktivität führt, die normalerweise nicht vorhanden ist.