[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: shell wrapper to set ioctls before & after a command execution?



Wasn't sure it had been thought out.  Thought you were doing a single backup script expecting blacklisting the single PID to work.  The method you have should work great.  


On Thu, Jun 6, 2013 at 12:55 PM, Giacomo Mulas <gmulas@oa-cagliari.inaf.it> wrote:
On Thu, 6 Jun 2013, Robert Goley wrote:

That sounds like a good idea but you would need to blacklist the PIDs of the
commands called from your backup script as well.  Most likely, they are the
processes opening all of the files to start with.  You might want to look at
using a python script for your backup script so you can more easily capture
the PIDs of the executed commands.  

Actually, I use backuppc, which in turn just uses rsync (with a lot of
options). So it just gets down to substituting vanilla rsync with a wrapped
rsync. But in general, yes, you are completely right. So far, I came up with
this (generic) wrapper script:

#! /bin/bash
CACHEDEVICES="/dev/mapper/capitanatacache"

$* &

mypid=$!

for dev in ${CACHEDEVICES} ; do flashcache_setioctl -a -b ${mypid} ${dev} ; done
wait ${mypid}
exitcode=$?
for dev in ${CACHEDEVICES} ; do flashcache_setioctl -r -b ${mypid} ${dev} ; done

exit ${exitcode}

Now I have to implement it through my updatedb (and similar) cron jobs, and
my backup system.

Ciao

Giacomo

--
_________________________________________________________________

Giacomo Mulas <gmulas@oa-cagliari.inaf.it>
_________________________________________________________________

OSSERVATORIO ASTRONOMICO DI CAGLIARI
Str. 54, Loc. Poggio dei Pini * 09012 Capoterra (CA)

Tel. (OAC): +39 070 71180 248     Fax : +39 070 71180 222
Tel. (UNICA): +39 070 675 4916
_________________________________________________________________

"When the storms are raging around you, stay right where you are"
                         (Freddy Mercury)
_________________________________________________________________


Reply to: