Over here, we had someone program a web interface to view daily reports of what was backed up. It's nothing great but it's a starting point. Anyhow, I just started up a project on sourceforge and I'm waiting for approval. So in a couple of days we should all be able to view and download the code.

Rick Meyer wrote:
I say your shell stuff is worth working on.

I would like to be able to initiate this from a webpage on the Linux server
from a Windows client.

I would also like to be able to browse backed-up files from a webpage on the
Linux host (files are stored on disk - ie not tape) then select a job to
restore back to the windows client.

So if this is worth something to other out there I'll do the webpage
interface, if someone can figure out how to execute the proper console
@commands to restore the files to the windows client, or perhaps there is
another way.


Rick Meyer


-----Original Message-----
From: [EMAIL PROTECTED] [mailto:bacula-users-
[EMAIL PROTECTED] On Behalf Of Richard Caley
Sent: Tuesday, April 12, 2005 8:58 AM
To: Emery Guevremont
Cc: bacula-users@lists.sourceforge.net
Subject: Re: [Bacula-users] Initiating a backup from a windows client

Here is the script I use to kick of backups of not-always-there
machines. It's a little hacky, but does the job for me.

Some assumptions:

    The client foo is the bacula file demon foo-fd

    You want to run Differential backups of foo every day it is
    actually available to be backed up.

    You have a job which is sheduled never to run automatically which
    when run by this script will do today's backup. For stupid shell
    reasons it is important that the job name not contain spaces. In
    the example below, FooJob.

    The bacula console config on host bachost is

         /usr/local/etc/bacula-bachost.conf

I have been thinking of extending this to be able to run a full backup
every month or similar, if anyone actually thinks this is interesting
enough to be worth working on I'll give it a go.


I run this every hour from root's crontab on the bacula director's machine as follows.

     bacula_backup_if_ready bachost foo-fd 1 FooJob

Meaning `talk to the bacula console on bachost and if foo has not been
backed up for at least 1 day, and it is up and available, back it up
by running FooJob.

I have only run this on FreeBSD, so there could be minor issues with
where things are related on other systems.

--- 8< --- 8< --- CUT HERE for bacula_backup_if_ready --- 8< --- 8< ---
#!/bin/sh

if [ $# -lt 3 ]
        then
        echo "Use: $0 HOST CLIENT DAYS" JOB1 JOB2...
        exit 1
fi

# set -x

host=${1-`hostname`}

host=`expr "$host" : '^\([^.]*\).*'`

exec > /var/log/bacula_oportunistic-$host 2>&1

conf=/usr/local/etc/bacula-$host.conf

client="$2"
days="$3"

shift 3

client_host=`expr "$client" : '\(.*\)-fd'`

# Shell function which runs a command via the
# bacula console.

bacula_command()
{
t="$1"
c="$2"

shift 2

{ echo "$c"; for a in "$@" ; do echo "$a"; done; } |
/usr/local/sbin/console -c "$conf"&

bacula_pid=$!

(sleep $t; kill $bacula_pid 2>/dev/null >&2)&

wait $bacula_pid
}

# Check timestamp to see if we are due a backup.

[ -d /var/bacula_timestamps ] || mkdir /var/bacula_timestamps

timestamp=`find /var/bacula_timestamps -name $client -mtime -$days`

echo timestamp=$timestamp

if [ -z "$timestamp" ]
        then
        if /sbin/ping -c 1 $client_host && bacula_command 10 "status
client=$client"
                then
                for job in "$@"
                        do
                        if bacula_command 10 "run \"$job\"" "mod" "1" "4"

"yes"

                                then
                                echo -n > /var/bacula_timestamps/$client
                        fi
                done
        fi
fi


--- 8< --- 8< --- bacula_backup_if_ready end --- 8< --- 8< ---


^_^ (O O) \_/@@\ \\~~/ ~~ - RJC


------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users





begin:vcard
fn;quoted-printable:Emery Gu=C3=A9vremont
n;quoted-printable:Gu=C3=A9vremont;Emery
org:Croesus Finansoft
adr:;;2 Place laval, Suite 510;Laval;PQ;H7N 5N6;Canada
email;internet:[EMAIL PROTECTED]
title;quoted-printable:Administrateur des syst=C3=A8mes
tel;work:450-662-6101
x-mozilla-html:FALSE
version:2.1
end:vcard

Reply via email to