diff options
Diffstat (limited to 'scripts/scsi_stop')
-rwxr-xr-x | scripts/scsi_stop | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/scripts/scsi_stop b/scripts/scsi_stop index c719ab30..a106c206 100755 --- a/scripts/scsi_stop +++ b/scripts/scsi_stop @@ -5,22 +5,26 @@ # Spin down the given SCS disk(s). # # SCSI disks (or disks that understand SCSI commands) -# are assumed. The immediate bit is set so the command -# should return immediately. The disk however will take -# 10 seconds or more to spin down. +# are assumed. By default, the immediate bit is set so the +# command should return immediately. The disk however will +# take 10 seconds or more to spin down. The '-w' option +# causes each stop to wait until the disk reports that it +# has stopped. # # This script assumes the sg3_utils package is installed. # ############################################### verbose="" +immediate="-i" usage() { - echo "Usage: scsi_stop [-h] [-v] <device>+" + echo "Usage: scsi_stop [-h] [-v] [-w] <device>+" echo " where:" echo " -h, --help print usage message" echo " -v, --verbose more verbose output" + echo " -w, --wait wait for each stop to complete" echo "" echo "Send SCSI START STOP UNIT command to stop each <device>" } @@ -37,6 +41,7 @@ while test ! -z "$opt" -a -z "${opt##-*}"; do case "$opt" in h|-help) usage ; exit 0 ;; v|-verbose) verbose="-v" ;; + w|-wait) immediate="" ;; *) echo "Unknown option: -$opt " ; exit 1 ;; esac shift @@ -45,6 +50,6 @@ done for i do - echo "sg_start -i 0 $verbose $i" - sg_start -i 0 $verbose $i + echo "sg_start $immediate 0 $verbose $i" + sg_start $immediate 0 $verbose $i done |