How can I identify what is preventing my HDDs from suspending?
Solution 1:
Apart monitoring the filesystem with obvious tools such as fuser
and lsof
, the only tool which actually reports every activity is auditd (installing then issuing sudo auditctl -w /dev/sda -p rwa
and then searching the logs with sudo ausearch -f /dev/sda
).
With this powerful tool, one is able to clearly identify what is interacting with the given device (/dev/sda
in this example) and then take appropriate actions.
In my case it's the combination of having a couple of WD disks which apparently don't play nice with with standby command and are woken up by the udisks2/udisksd daemon invoking the smart report command every 10 minutes (it shouldn't wake up the disk - or better preventing from standby-ing but it does with those WD here and here for more details).