Date: Fri, 14 Apr 2006 16:48:27 -0500 From: David J Brooks <daeg@houston.rr.com> To: freebsd-questions@freebsd.org Cc: Garrett Cooper <youshi10@u.washington.edu> Subject: Re: Determining whether or not a SCSI disk is in use Message-ID: <200604141648.27728.daeg@houston.rr.com> In-Reply-To: <308097D9-B881-4A41-89F2-B3D963C17EA4@u.washington.edu> References: <443F5CE6.4080107@u.washington.edu> <20060414131931.Q81702@home.ephemeron.org> <308097D9-B881-4A41-89F2-B3D963C17EA4@u.washington.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
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.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604141648.27728.daeg>