Bacula-users

Re: [Bacula-users] File deamon not following configuration

2013-05-06 13:12:01
Subject: Re: [Bacula-users] File deamon not following configuration
From: "Michael D. Wood" <mike AT itsecuritypros DOT org>
To: "'Wouter van Marle'" <wouter AT squirrel-systems DOT com>, <bacula-users AT lists.sourceforge DOT net>
Date: Mon, 6 May 2013 13:08:07 -0400
Where it says...

Maximum Volume Bytes = 50G

Try adding the actual bytes, this is how I do it, not sure if it works the
way you have it or not.

50 Gigabyte = 53687091200 bytes

--
Michael D. Wood
www.itsecuritypros.org

-----Original Message-----
From: Wouter van Marle [mailto:wouter AT squirrel-systems DOT com] 
Sent: Sunday, May 05, 2013 11:32 PM
To: bacula-users AT lists.sourceforge DOT net
Subject: [Bacula-users] File deamon not following configuration

Hi,

I'm having a big problem with my bacula configuration.

It is supposed to create a new large archive every time a job is run, with
a.o. the job name and start date and time in the name.

Now some time ago I changed this scheme, made it small chunks (50 MB), many
chunks for one archive. I didn't like it, turned it back (or so I
thought) but Bacula is not only still archiving in 50 MB chunks, it's
recycling names from back in 2012!

I've tried many things, I'm quite sure my configuration is fine now, but it
still doesn't work. Hereby bacula-dir.conf (stripped password for
posting):


#
# Default Bacula Director Configuration file # #  The only thing that MUST
be changed is to add one or more
#   file or directory names in the Include directive of the
#   FileSet resource.
#
#  For Bacula release 5.0.2 (28 April 2010) -- debian squeeze/sid # #  You
might also want to change the default email address
#   from root to your address.  See the "mail" and "operator"
#   directives in the Messages resource.
#

Director {                            # define myself
  Name = acorn.squirrel-dir
  DIRport = 9101                # where we listen for UA connections
  QueryFile = "/etc/bacula/scripts/query.sql"
  WorkingDirectory = "/var/lib/bacula"
  PidDirectory = "/var/run/bacula"
  Maximum Concurrent Jobs = 1
  Password = "password"         # Console password
  Messages = Daemon
  DirAddress = 127.0.0.1
}

JobDefs {
  Name = "DefaultJob"
  Type = Backup
#  accurate = yes
  Level = Incremental
  Client = acorn.squirrel-fd
#  FileSet = "Full Set"
#  Schedule = "WeeklyCycle"
  Storage = File
  Messages = Standard
  Pool = File
  Priority = 10
  Write Bootstrap = "/var/lib/bacula/%c.bsr"
  RunAfterJob = "/usr/local/bin/purge-old-archives.sh "\%l\" \"%n\""
  RunAfterJob = "/usr/local/bin/backup_to_glacier \"%v\" \"%j\" \"%l\"
\"%s\""
}

# Specific job for the backup of the user's home dir.
Job {
  Name = "Users"
  JobDefs = "DefaultJob"
  FileSet = "Home"
  Schedule = "WeeklyCycleUsers"
#  RunBeforeJob = "/usr/local/bin/purge-old-archives.sh "\%l\" \"%n\""
#  RunAfterJob = "/usr/local/bin/backup_to_glacier \"%v\" \"%j\" \"%l\"
\"%s\""
}

# Specific job for the backup of the system data.
Job {
  Name = "System"
  JobDefs = "DefaultJob"
  FileSet = "System"
  Schedule = "WeeklyCycleSystem"
#  RunAfterJob = "/usr/local/bin/backup_to_glacier \"%v\" \"%j\" \"%l\"
\"%s\""
}

# Backup the catalog database (after the nightly save) Job {
  Name = "BackupCatalog"
  JobDefs = "DefaultJob"
  Level = Full
  FileSet="Catalog"
  Schedule = "WeeklyCycleAfterBackup"
  # This creates an ASCII copy of the catalog
  # Arguments to make_catalog_backup.pl are:
  #  make_catalog_backup.pl <catalog-name>
  RunBeforeJob = "/etc/bacula/scripts/make_catalog_backup.pl MyCatalog"
  # This deletes the copy of the catalog
  RunAfterJob = "/etc/bacula/scripts/delete_catalog_backup"
#  RunAfterJob = "/usr/local/bin/backup_to_glacier \"%v\" \"%j\" \"%l\"
\"%s\""
  Priority = 11                   # run after main backup
}

#
# Standard Restore template, to be changed by Console program #  Only one
such job is needed for all Jobs/Clients/Storage ...
#
Job {
  Name = "RestoreFiles"
  Type = Restore
  Client=acorn.squirrel-fd                 
  FileSet="System"                  
  Storage = File                      
  Pool = Default
  Messages = Standard
  Where = /backup/bacula-restores
}


# Back up of the /home directory; with a bunch of excludes listed in # a
separate file.
FileSet {
  Name = "Home"
  Include {
    Options {
      compression = GZIP
      signature = MD5
      @/etc/bacula/excludes.home
      exclude = yes
    }
    File = /home
    @/etc/bacula/includes.home
    Exclude Dir Containing = .baculaExclude
  }
}

# Backup of the System files; with a bunch of excludes listed in # a
separate file.
FileSet {
  Name = "System"
  Include {
    Options {
      compression = GZIP
      signature = MD5
      @/etc/bacula/excludes.home
      exclude = yes
    }
    File = /etc
    File = /var
    Exclude Dir Containing = .baculaExclude
  }
}


# This is the backup of the catalog
FileSet {
  Name = "Catalog"
  Include {
    Options {
      signature = MD5
    }
    File = "/var/lib/bacula/bacula.sql"
  }
}

#
# When to do the backups, full backup on first sunday of the month, #
differential (i.e. incremental since full) every other sunday, #  and
incremental backups other days Schedule {
  Name = "WeeklyCycleUsers"
  Run = Full 1st sun at 01:05
  Run = Differential 2nd-5th sun at 04:05
  Run = Incremental mon-sat at 04:05
}

Schedule {
  Name = "WeeklyCycleSystem"
  Run = Full 1st sun at 04:35
  Run = Differential 2nd-5th sun at 04:35
  Run = Incremental mon-sat at 04:35
}

# This schedule does the catalog. It starts after the WeeklyCycle Schedule {
  Name = "WeeklyCycleAfterBackup"
  Run = Full sun-sat at 05:05
}


# Client (File Services) to backup
Client {
  Name = acorn.squirrel-fd
  Address = localhost
  FDPort = 9102
  Catalog = MyCatalog
  Password = "password"          # password for FileDaemon
  File Retention = 30 days            # 30 days
  Job Retention = 6 months            # six months
  AutoPrune = yes                     # Prune expired Jobs/Files
}

# Definition of file storage device
Storage {
  Name = File
# Do not use "localhost" here    
#  Address = localhost                # N.B. Use a fully qualified name
here
  Address = 192.168.2.1
  SDPort = 9103
  Password = "password"
  Device = FileStorage
  Media Type = File
}


# Generic catalog service
Catalog {
  Name = MyCatalog
# Uncomment the following line if you want the dbi driver # dbdriver =
"dbi:sqlite3"; dbaddress = 127.0.0.1; dbport =
  dbname = "bacula"; dbuser = ""; dbpassword = ""
}

# Reasonable message delivery -- send most everything to email address #
and to the console Messages {
  Name = Standard
#
# NOTE! If you send to two email or more email addresses, you will need #
to replace the %r in the from field (-f part) with a single valid #  email
address in both the mailcommand and the operatorcommand.
#  What this does is, it sets the email address that emails would display #
in the FROM field, which is by default the same email as they're being #
sent to.  However, if you send email to more than one address, then #
you'll have to set the FROM address manually, to a single address. 
#  for example, a 'no-reply AT mydomain DOT com', is better since that tends to 
#
tell (most) people that its coming from an automated source.

#
  mailcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\) \<%r
\>\" -s \"Bacula: %t %e of %c %l\" %r"
  operatorcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\)
\<%r\>\" -s \"Bacula: Intervention needed for %j\" %r"
  mail = root@localhost = all, !skipped            
  operator = root@localhost = mount
  console = all, !skipped, !saved
#
# WARNING! the following will create a file that you must cycle from
#          time to time as it will grow indefinitely. However, it will
#          also keep all your messages if they scroll off the console.
#
  append = "/var/lib/bacula/log" = all, !skipped
  catalog = all
}


#
# Message delivery for daemon messages (no job).
Messages {
  Name = Daemon
  mailcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\) \<%r
\>\" -s \"Bacula daemon message\" %r"
  mail = root@localhost = all, !skipped            
  console = all, !skipped, !saved
  append = "/var/lib/bacula/log" = all, !skipped }

Counter {
  Name = Counter
  Minimum = 1
  Maximum = 9999
}

# Default pool definition
Pool {
  Name = Default
  Pool Type = Backup
#  Recycle = yes                       # Bacula can automatically
recycle Volumes
  Recycle = no
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 365 days         # one year
}

# File Pool definition
Pool {
  Name = File
  Pool Type = Backup
#  Recycle = yes                       # Bacula can automatically
recycle Volumes
  Recycle = no
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 365 days         # one year
  Maximum Volume Bytes = 50G          # Limit Volume size to something
reasonable
#  Maximum Volume Bytes = 50M          # due to free download limits by
Glacier.
#  Maximum Volumes = 100               # Limit number of Volumes in Pool
  Use Volume Once = yes
#  Label Format = "Squirrel-${JobName}-${Counter+:p/4/0/r}"
  Label Format = "Squirrel-${JobName}"
  Autoprune = yes
}


# Scratch pool definition
Pool {
  Name = Scratch
  Pool Type = Backup
}

#
# Restricted console used by tray-monitor to get the status of the director
# Console {
  Name = acorn.squirrel-mon
  Password = "password"
  CommandACL = status, .status
}



Hereby the bacula-fd.conf:

#
# Default  Bacula File Daemon Configuration file # #  For Bacula release
5.0.2 (28 April 2010) -- debian squeeze/sid # # There is not much to change
here except perhaps the # File daemon Name to #

#
# List Directors who are permitted to contact this File daemon # Director {
  Name = acorn.squirrel-dir
  Password = "password"
}

#
# Restricted Director, used by tray-monitor to get the
#   status of the file daemon
#
Director {
  Name = acorn.squirrel-mon
  Password = "password"
  Monitor = yes
}

#
# "Global" File daemon configuration specifications #
FileDaemon {                          # this is me
  Name = acorn.squirrel-fd
  FDport = 9102                  # where we listen for the director
  WorkingDirectory = /var/lib/bacula
  Pid Directory = /var/run/bacula
  Maximum Concurrent Jobs = 20
  FDAddress = 127.0.0.1

  # Backup archive encryption.
  PKI Signatures = Yes            # Enable Data Signing
  PKI Encryption = Yes            # Enable Data Encryption
  PKI Keypair = "/etc/bacula/fd-squirrel.pem"    # Public and Private
Keys
  PKI Master Key = "/etc/bacula/master.cert"    # ONLY the Public Key
}

# Send all messages except skipped files back to Director Messages {
  Name = Standard
  director = acorn.squirrel-dir = all, !skipped, !restored }



Hereby the bacula-sd.conf:

#
# Default Bacula Storage Daemon Configuration file # #  For Bacula release
5.0.2 (28 April 2010) -- debian squeeze/sid # # You may need to change the
name of your tape drive
#   on the "Archive Device" directive in the Device
#   resource.  If you change the Name and/or the 
#   "Media Type" in the Device resource, please ensure
#   that dird.conf has corresponding changes.
#

Storage {                             # definition of myself
  Name = acorn.squirrel-sd
  SDPort = 9103                  # Director's port      
  WorkingDirectory = "/var/lib/bacula"
  Pid Directory = "/var/run/bacula"
  Maximum Concurrent Jobs = 20
#  SDAddress = 127.0.0.1
  SDAddress = 192.168.2.1
}

#
# List Directors who are permitted to contact Storage daemon # Director {
  Name = acorn.squirrel-dir
  Password = "password"
}

#
# Restricted Director, used by tray-monitor to get the
#   status of the storage daemon
#
Director {
  Name = acorn.squirrel-mon
  Password = "password"
  Monitor = yes
}

#
# Note, for a list of additional Device templates please #  see the
directory <bacula-source>/examples/devices # Or follow the following link:
#
http://bacula.svn.sourceforge.net/viewvc/bacula/trunk/bacula/examples/device
s/
#

#
# Devices supported by this Storage daemon # To connect, the Director's
bacula-dir.conf must have the #  same Name and MediaType. 
#

Device {
  Name = FileStorage
  Media Type = File
  Archive Device = /backup/bacula
  LabelMedia = yes;                   # lets Bacula label unlabeled
media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
}

#
# Send all messages to the Director,
# mount messages also are sent to the email address # Messages {
  Name = Standard
  director = acorn.squirrel-dir = all
}



----------------------------------------------------------------------------
--
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET Get
100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Attachment: smime.p7s
Description: S/MIME cryptographic signature

------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users
<Prev in Thread] Current Thread [Next in Thread>