Determining whether or not a SCSI disk is in use
David J Brooks
daeg at houston.rr.com
Fri Apr 14 21:48:31 UTC 2006
On Friday 14 April 2006 16:43, Garrett Cooper wrote:
> On Apr 14, 2006, at 1:21 PM, Bigby Findrake wrote:
> > On Fri, 14 Apr 2006, Bigby Findrake wrote:
> >
> > I'm sorry, I'm an idiot - the script, in its current incarnation,
> > needs to be modified. It's doing exactly what you don't want it to
> > do - it will shut down the disk if there was activity. The if
> > statement should read:
> >
> > if [ $STATUS -ne 0 ]
> >
> >> On Fri, 14 Apr 2006, Garrett Cooper wrote:
> >>> Yes. Recently accessed or is being accessed.
> >>> -Garrett
> >>
> >> Well, for a shell-script-hack, which (i) requires no new kernel
> >> and (ii) could be fairly portable but (iii) could conceivably miss
> >> some activity, you could do something like the following:
> >>
> >> #!/bin/sh
> >>
> >> DISKDEV=da0
> >> SHUTDOWN_COMMAND="camcontrol stop 0,1,0"
> >> SECONDS=60
> >>
> >> # check for activity
> >> # watch iostat for $SECONDS seconds for anything
> >>
> >> iostat -d $DISKDEV 1 5 | awk ' NR>2 && $2>0 { print "x" } ' |\
> >> grep x > /dev/null
> >>
> >> STATUS=$?
> >>
> >> if [ $STATUS -eq 0 ]
> >> then
> >>
> >> # there was activity,
> >> $SHUTDOWN_COMMAND
> >> fi
>
> Brilliant! That's exactly what I was looking for!
> The only thing I've noticed is that there is a small amount of data
> being transferred while the disk is idle, so perhaps the sampling
> needs to watch for the amount of data as well as the overall
> transactions being done to properly fix up a script to do this?
> Anyhow, I'll end up doing that, but thanks for the command :).
Perhaps a softupdate hasn't completed yet?
David
--
Sure God created the world in only six days,
but He didn't have an established user-base.
More information about the freebsd-questions
mailing list