Hi,

you can use sg_start to start (spin-up, 1) and stop (spin-down, 0) devices.
I also offers a parameter (-s) to send a synchronize cache command to a
device, so it should write back its internal buffers to the medium.

Be aware that the Linux SCSI subsystem at this time does not automatically
starts stopped devices, so stopping a device which is in use may have fatal
results for you.

So, you should apply with care.
I use it in my shutdown script at the end (before the poweroff command):

# SG_SHUG_NOS is set in my config file rc.config
# SG_SHUT_NOS="0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15"
if test -x /bin/sg_start; then
    if test "`basename $command`" = "reboot"; then
        for no in $SG_SHUT_NOS;
	      do /bin/sg_start /dev/sg$no -s >/dev/null 2>&1;
	 done
    else
        for no in $SG_SHUT_NOS;
	    do /bin/sg_start /dev/sg$no -s 0 >/dev/null 2>&1;
        done
    fi
fi

Enjoy!
Kurt Garloff


Postscript
==========
sg_start has been reworked to allow a block device (e.g. /dev/sda) in
addition to the sg device name (e.g. /dev/sg0) in the lk 2.6 series.
sg_start now has more command line options, see its man page.

	Douglas Gilbert <dgilbert at interlog dot com> 2004/5/8
