4

I'm considering the idea of using Bacula for some backups, however to save tapes and limit manual operations, I'd like to make a two-stage backup :

  1. backup machines to disk (easy enough in bacula)
  2. When done, consolidate disk backups on tape. That's the tricky point...

Does anyone know how to "migrate" a given backup from a disk support to tape from within Bacula?

wazoox
  • 6,782
  • 4
  • 30
  • 62

4 Answers4

5

Bacula supports a Migration job type that should do what you need. See here.

Daniel
  • 1,703
  • 1
  • 12
  • 16
  • This is exactly what I was looking for, but I missed it in the documentation, thank you very much! – wazoox Jul 02 '09 at 19:41
2

You could just write another backup job that has the sole purpose of backing up the archive files of your first stage from disk to tape.

Sven
  • 97,248
  • 13
  • 177
  • 225
  • 1
    Well sure, however I wouldn't have the right list of files from the database, and to restore a single file from the tape I would have to first restore the archive, then restore from the archive. Plus the added headache of database inconsistency... – wazoox Jul 02 '09 at 14:58
1

I've been doing this for years, but I only use bacula for the 2nd stage. I use an rsync-based solution for the first stage:

1. Disk-to-disk

All machines on our network run a daily cron job to back up their critical directories to the backup server's giant disk. Since we use rsync for this, we get a "synthetic full" backup each time. This greatly reduces the burden on the machines as they only have to send the files that have changed, but the backup server always has a full copy of their backed up folders on its disk.

2. Disk-to-tape

Bacula takes care of putting all the files to tape according to a schedule: Full tape backup every month, differential backup every week, and incremental every day.

The advantage of this is that we minimize the burden on our live servers (because we're using rsync to pull only changed files, reducing the backup window), and all of the hard work is performed by our backup server.

It may be possible to do all this from within bacula now that it supports migration jobs, but this is working wonderfully as is. We backup about 40 servers with about 9TB of data.

lukecyca
  • 2,185
  • 13
  • 20
-1

I don't believe that there is an official bacula mechanism for doing what you want.

This is what I did this for a customer with a small office (5 PCs, a server, and 2 servers on the internet).

First, I ran the nightly backup jobs, which backed up to the server's disk. Next, I ran a script that would restore to another location on disk (we have plenty of space) and then tar and feather to tape.

The reason I did this, as opposed to sweimann's good suggestion of simply backing up the backup files to tape, was that I wanted maximum portability of the final tapes. You can pop a tar'ed tape into any machine (even windows, w/ the right software) and restore the files.

The online backups are the true primary, and they go back for six months. The tapes, which were always limited to the most recent full restore, are mainly for CYA disaster recovery in case the office burned down (they were meant to be taken off site).

No, it doesn't scale terribly well, and it takes much longer than a direct backup, but it works for some scenarios.

Geoff Fritz
  • 1,717
  • 9
  • 11