[Dirvish] non-dirvish directories in the bank confuse dirvish-expire

Keith Lofstrom keithl at kl-ic.com
Sun Feb 13 12:43:42 PST 2005


On Sun, Feb 13, 2005 at 03:03:03PM +0100, Václav ??milauer wrote:
> my dirvish bank is /mnt/backup. I put some old files into
> /mnt/backup/OLD by hand. This seems, however, to make dirvish-expire
> think OLD is a vault and looks for configuration files in it. It fails
> nonetheless and exits with error (anyway, I wonder what is the way it
> looks for configuration file name). For example:
> 
> gamma:/etc/dirvish# dirvish-expire
> cannot open config file:
> /mnt/backup/OLD/vservers/vagus/etc/gconf/gconf.xml.defaults/schemas/apps/evolution/summary
> 
> My question is if I need to have a dedicated directory for dirvish bank.
> I thought dirvish-expire did not go ahead to tidy up vaults until having
> read master configuration file. Or am I wrong? Thanks for any clarification.

The 1.2 version of dirvish-expire makes the assumption that anything if finds
in a bank is a vault, and if it sees a directory containing an entry named
"summary", dirvish-expire proceeds to start attempting an expire.  Otherwise,
expire has no idea which directory is a vault;  the list given to "runall"
isn't used by dirvish-expire.  dirvish-expire uses Find::Name to search
to any depth in the bank.

I don't like the current behavior;  it makes more sense to me to only treat
directories one level deep in the banks as vaults, and look for summary files
two levels deep only, rather than let Find::Name look anywhere.  Time for an
RFE.

Further, rather than let dirvish-expire just look at anything, it might
be better to add an additional option, --runall, that constrains it to
touch only the vaults listed in the Runall: array in the master.conf file.
Another RFE.

But that doesn't help you, right now.  There is a quick fix.  Right now,
you are using /mnt/backup as your bank, apparently.  It is better to use
/mnt/backup/dirvish as the bank, then store your old data as 
/mnt/backup/OLD .  Then, dirvish will never touch it.  Also, this leaves
a place for other data on your backup drive;  for example, I like to 
add a file /mnt/backup/DISKLABEL which describes the disk drive the 
data is on.  

On my machines, I do not share vaults between machines.  So my vaults
look like (names changed to protect the innocent):

   /mnt/backup/dirvish/dick/dick-root
   /mnt/backup/dirvish/dick/dick-home
   /mnt/backup/dirvish/jane/jane-root
   /mnt/backup/dirvish/jane/jane-home

Thus making my banks

   /mnt/backup/dirvish/dick
   /mnt/backup/dirvish/jane

That gives me further control, and allows me to move all the vaults
associated with one machine around together.

I think what you want to do is reasonable, and although dirvish-expire
doesn't work that way now, we should probably allow it (with a --runall
flag) sometime in the future.  For now, just move the directories around
a bit and things should work OK.

Keith

-- 
Keith Lofstrom          keithl at keithl.com         Voice (503)-520-1993
KLIC --- Keith Lofstrom Integrated Circuits --- "Your Ideas in Silicon"
Design Contracting in Bipolar and CMOS - Analog, Digital, and Scan ICs


More information about the Dirvish mailing list