Pour que les disques USB s'arrêtent de tourner, on peut utiliser sdparm --command=stop /dev/sda.

Il n'est malheureusement pas possible de demander l'arrêt au bout d'un certain temps, c'est pourquoi on peut écrire un script :
#!/bin/sh

# Ce programme arrete le disque sur SCSI (ou USB) au bout de 'interval' minutes
# Necessite sdparm

disk=sda
interval=15

state=`grep " $disk " /proc/diskstats`
count=$interval
up=1

while [ true ]; do
   sleep 60
   count=$(($count-1))
   newstate=`grep " $disk " /proc/diskstats`
#   echo -e $newstate
   if [ "$state" = "$newstate" ]; then
      if [ $count -lt 0 ]; then
         count=$interval
         if [ $up = 1 ]; then
            echo -e "spin-down\t" `date`
            sync
            state=`grep " $disk " /proc/diskstats`
#           echo -e $state
            sdparm --command=stop /dev/$disk
            up=0
         fi
      fi
   else
      echo -e "drive is up\t" `date`
      count=$interval
      state="$newstate"
      up=1
   fi
done
A lancer au démarrage par start-stop-daemon --start -b --exec shutdownHDD.sh