Bacula-users

Re: [Bacula-users] How to make bacula handle sparse files correctly

2014-11-25 19:19:38
Subject: Re: [Bacula-users] How to make bacula handle sparse files correctly
From: Bill Arlofski <waa-bacula AT revpol DOT com>
To: "Polcari, Joe (Contractor)" <Joe_Polcari AT cable.comcast DOT com>, "bacula-users AT lists.sourceforge DOT net" <bacula-users AT lists.sourceforge DOT net>
Date: Tue, 25 Nov 2014 19:15:46 -0500
On 11/25/2014 01:35 PM, Polcari, Joe (Contractor) wrote:
> So I can't quite grasp this.
> I have a directory which is part of / that contains virtual disk images, 
> /opt/virtual/images.
> I think I want to set that directory to do sparse files since I don't 
> allocate the complete disk when I create a VM.
> So I start with:
> 
> FileSet {
>   Name = puppetmaster-fileset
>   Include {
>     Options {
>       signature = MD5
>       noatime = yes
>     }
>     File = /boot
>     File = /
>     File = /var/lib/mysql
>   }
>   Exclude {
>     File = /var/spool/bacula
>     File = /tmp
>     File = /proc
>     File = /tmp
>     File = /.journal
>     File = /.fsck
>   }
> }
> 
> I should change it to:
> 
> FileSet {
>   Name = puppetmaster-fileset
>   Include {
>     Options {
>       signature = MD5
>       noatime = yes
>     }
>     File = /boot
>     File = /
>     File = /var/lib/mysql
>   }
>   Exclude {
>     File = /opt/virtual/images
>     File = /var/spool/bacula
>     File = /tmp
>     File = /proc
>     File = /tmp
>     File = /.journal
>     File = /.fsck
>   } 
>    Include {
>     Options {
>       signature = MD5
>       noatime = yes
>       sparse = yes
>     }
>     File = /opt/virtual/images
> }
> 
> Is that right?

Hi Joe,

>>From some testing I did just now, what you have posted above appears to work
correctly.

Back when I set mine up, I approached it from the other direction.

I used the "wild" and "exclude = yes" directives in the Options section of my
Include stanza, to omit the dir with the sparse file. Then listed all the
other "File = " dirs to include, followed by a second Include stanza with the
"sparse = yes" option and the directory to include which contains the sparse 
file:

--[snip]--
FileSet {
  Name = Zimbra8Set
  Ignore FileSet Changes = yes
  Include {
    Options {
      compression = LZO
      signature = MD5
      # Omit dir with sparse files, it will be picked up below
      wild = /backup/zimbra/data/ldap/mdb/db/*
      exclude = yes
    }
    File = /etc
    File = /var
    File = /home
    File = /root
    File = /backup
    File = /usr/local/src
  }

  Include {
    Options {
      compression = LZO
      signature = MD5
      # /backup/zimbra/data/ldap/mdb/db/data.mdb is a sparse 40GB file
      sparse = yes
    }
    File = /backup/zimbra/data/ldap/mdb/db
  }
}
--[snip]--


I did this a while ago, and am not 100% sure why I went that route instead of
the more straight-forward method you list above with a single Exclude {}
stanza.  I am usually very good to document each change, why it is there, and
the reasoning behind the madness, but apparently not that time. ;)

Bill




-- 
Bill Arlofski
Reverse Polarity, LLC
http://www.revpol.com/
-- Not responsible for anything below this line --

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users