Im Prinzip ist das bei Linux ganz simpel, da hdparm selbst nachschaut, ob die Festplatte aktiv ist oder nicht und dann entsprechend schlafen legt.
Hier findest Du ein paar Ausführungen zu hdparm.
Ich habe das bei mir so gelöst, dass alle Platten, außer der wo das Betriebssystem (Ubuntu) drauf ist nach 10 Minuten Inaktivität schlafen gehen. Die Inaktivitätsdauer kann beliebig festgelegt werden. Der Aufruf von hdparm muss nach jedem neuen Booten einmal erfolgen und dazu nutzt man z. B. die Datei /etc/rc.local. In diese schreibt man z. B.:
/sbin/hdparm -S 120 /dev/sdb
Mit dieser Zeile wird dann die 2. Festplatte (/dev/sdb) nach Ablauf der Inaktivitätszeit S = 120 * 5 Sekunden = 600 Sekunden = 10 Minuten schlafen gelegt.
Wenn die Platten laufend wieder geweckt werden, dann kann es noch notwendig sein die Mountparameter in der /etc/fstab etwas anzupassen, z. B. sieht das bei mir dann so aus:
UUID=6b80730d-c25b-4416-9639-2966191d8422 /mnt/sdb1 ext4 defaults,noatime,nodiratime 0 0
Wichtig sind hier die Parameter "noatime, nodiratime", da Linux gerne ab und zu was auf die Platten schreiben will, was hiermit unterdrückt wird.
Bei der Bearbeitung der /etc/fstab solltest Du allerdings sehr vorsichtig sein, wenn Du nicht weißt was Du tust, denn im schlimmsten fall bootet Dein system nicht mehr und Du musst dann mit einer Live-CD die /etc/fsatb reparieren.
Paul