Phil Stracchino wrote:
The documentation appears to be in error in this regard.  According to
Kern, the following Schedule syntax will work for this:

Schedule {
    Name = "Alternate Pools"
    Run = Level=Differential Pool=Pool1 1st,3rd,5th mon-fri at 10:00
    Run = Level=Differential Pool=Pool2 2nd,4th mon-fri at 10:00
}

Unfortunately this still doesn't define a 2-week rotation.
If every month had 4 weeks, then this would work, but
since some months have 5 weeks you would be repeating the
same tape set on the 5th week of month 1 and the 1st week
of month 2.

Additionally, months don't end on week boundries, so I think
you would end up switching tapes mid-week here in most cases,
which is not desireable (or even possible in the case of
holidays) either.  Since years don't have the same number of
weeks either, nor do they end on week boundries, this syntax
doesn't lend itself to weekly rotations.

What you really need is a way to specify "modulo # weeks since
the epoch."  We too would like this functionality in Bacula.

The way we currently make bacula do a weekly rotation is with a
very kludgy hack.  For every client machine, we define two backup
jobs.  Each job is set up to run on specified days of every
single week but to backup to a separate pool designated for its
respective week.  Both jobs for a machine run a RunBeforeJob
script that will exit non-zero if it is the wrong week for that
job to be running.

Specific example:

First job has:
RunBeforeJob  = "/etc/bacula/weekcheck 1"

Second job has:
RunBeforeJob  = "/etc/bacula/weekcheck 2"

"weekcheck" just evaluates:
passed_argument == weeks_since_the_epoch % 2
and exits 0 if true, and non-zero if false.


To keep this from spewing error messages by email, we wrote a
wrapper script for bsmtp called "hideweekerror" that will not
send out the error message if the exit code is 10, which is what
bacula gives for a RunBeforeJob error.

Very, *very* kludgy, but it works.

Greg


-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download it for free - -and be entered to win a 42" plasma tv or your very
own Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Reply via email to