# # 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 1.39 # # 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 = @hostname@-dir DIRPort = @dirport@ # where we listen for UA connections QueryFile = "@scriptdir@/query.sql" WorkingDirectory = "@working_dir@" PidDirectory = "@piddir@" Maximum Concurrent Jobs = 4 Password = "pNvX1WiXnwv2C/F7E52LGvw6rKjbbPvu2kyuPa9pVaL3" Messages = Daemon } # # Define the main nightly save backup job # By default, this job will back up to disk in @tmpdir@ Job { Name = "NightlySave" Type = Backup Client=@hostname@-fd FileSet="Full Set" Storage = File Messages = Standard Pool = Default Write Bootstrap = "@working_dir@/NightlySave.bsr" Maximum Concurrent Jobs = 4 SpoolData = yes # Allow Duplicate Jobs = No # Prefer Mounted Volumes = no } Job { Name = "Save" Type = Backup Client=@hostname@-fd FileSet="Full Set" Storage = File Messages = Standard Pool = Default Write Bootstrap = "@working_dir@/Save.bsr" Maximum Concurrent Jobs = 4 } Job { Name = "migrate-job" Type = Migrate Level = Full Client=@hostname@-fd FileSet="Full Set" Messages = Standard Storage = DiskChanger Write Bootstrap = "@working_dir@/migratejob.bsr" Pool = Default Maximum Concurrent Jobs = 4 Selection Type = Job Selection Pattern = ".*Save" # Allow Duplicate Jobs = No } Job { Name = "migrate-volume" Type = Migrate Level = Full Client=@hostname@-fd FileSet="Full Set" Messages = Standard Storage = DiskChanger Write Bootstrap = "@working_dir@/migratevol.bsr" Pool = Default Maximum Concurrent Jobs = 4 Selection Type = Volume Selection Pattern = "File*" # Allow Duplicate Jobs = No } Job { Name = "copy-uncopied" Type = Copy Level = Full Client=@hostname@-fd FileSet="Full Set" Messages = Standard Storage = DiskChanger Write Bootstrap = "@working_dir@/migratevol.bsr" Pool = Default Maximum Concurrent Jobs = 4 Selection Type = PoolUncopiedJobs # Allow Duplicate Jobs = No } Job { Name = "migrate-occupancy" Type = Migrate Level = Full Client=@hostname@-fd FileSet="Full Set" Messages = Standard Storage = DiskChanger Write Bootstrap = "@working_dir@/migratejob.bsr" Pool = Default Maximum Concurrent Jobs = 4 Selection Type = PoolOccupancy # Allow Duplicate Jobs = No } Job { Name = "migrate-time" Type = Migrate Level = Full Client=@hostname@-fd FileSet="Full Set" Messages = Standard Storage = DiskChanger Write Bootstrap = "@working_dir@/migratejob.bsr" Pool = Default Maximum Concurrent Jobs = 4 Selection Type = PoolTime # Allow Duplicate Jobs = No } # Standard Restore template, to be changed by Console program Job { Name = "RestoreFiles" Type = Restore Client=@hostname@-fd FileSet="Full Set" Storage = File Messages = Standard Pool = Default Where = @tmpdir@/bacula-restores } # List of files to be backed up FileSet { Name = "Full Set" Include { Options { signature=MD5 } File = <@tmpdir@/file-list } } # # 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 = "WeeklyCycle" Run = Full 1st sun at 1:05 Run = Differential 2nd-5th sun at 1:05 Run = Incremental mon-sat at 1:05 } # Client (File Services) to backup Client { Name = @hostname@-fd Address = @hostname@ FDPort = @fdport@ Catalog = MyCatalog Password = "xevrjURYoCHhn26RaJoWbeWXEY/a3VqGKp/37tgWiuHc" # password for FileDaemon File Retention = 30d # 30 days Job Retention = 180d # six months AutoPrune = yes # Prune expired Jobs/Files Maximum Concurrent Jobs = 4 } # Definition of DDS Virtual tape disk storage device Storage { Name = DiskChanger Address = @hostname@ # N.B. Use a fully qualified name here SDPort = @sdport@ Password = "ccV3lVTsQRsdIUGyab0N4sMDavui2hOBkmpBU0aQKOr9" # password for Storage daemon Device = DiskChanger # must be same as Device in Storage daemon Media Type = DiskChangerMedia # must be same as MediaType in Storage daemon Maximum Concurrent Jobs = 4 Autochanger = yes } # Definition of file storage device Storage { Name = File Address = @hostname@ SDPort = @sdport@ Password = "ccV3lVTsQRsdIUGyab0N4sMDavui2hOBkmpBU0aQKOr9" # password for Storage daemon Device = FileStorage Media Type = File Maximum Concurrent Jobs = 5 } # Generic catalog service Catalog { Name = MyCatalog @libdbi@ dbname = @db_name@; user = @db_user@; password = "@db_password@" } # Reasonable message delivery -- send most everything to email address # and to the console Messages { Name = Standard mailcommand = "@sbindir@/bsmtp -h localhost -f \"\(Bacula regression Job %j\) %r\" -s \"Regression: %t %e of %c %l\" %r" operatorcommand = "@sbindir@/bsmtp -h localhost -f \"\(Bacula regression Job %j\) %r\" -s \"Regression: Intervention needed for %j\" %r" # MailOnError = @job_email@ = all, !terminate # operator = @job_email@ = mount console = all, !skipped, !terminate, !restored # # 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 the scroll off the console. # append = "@working_dir@/log" = all, !skipped catalog = all, !skipped } # # Message delivery for daemon messages (no job). Messages { Name = Daemon mailcommand = "@sbindir@/bsmtp -h @smtp_host@ -f \"\(Bacula regression\) %r\" -s \"Regression daemon message\" %r" # mail = @job_email@ = all, !skipped console = all, !skipped, !saved append = "@working_dir@/log" = all, !skipped catalog = all, !skipped } # Default pool definition Pool { Name = Default Pool Type = Backup Recycle = yes # Bacula can automatically recycle Volumes AutoPrune = yes # Prune expired volumes Volume Retention = 365d # one year NextPool = Full Storage = File Migration High Bytes = 40M Migration Low Bytes = 20M Migration Time = 1 } Pool { Name = Special Pool Type = Backup Recycle = yes # Bacula can automatically recycle Volumes AutoPrune = yes # Prune expired volumes Volume Retention = 365d # one year NextPool = Full Storage = File Migration High Bytes = 40M Migration Low Bytes = 20M Migration Time = 5h } Pool { Name = Full Pool Type = Backup Recycle = yes # Bacula can automatically recycle Volumes AutoPrune = yes # Prune expired volumes Volume Retention = 365d # one year Storage = DiskChanger } Pool { Name = Scratch Recycle = yes AutoPrune = yes Pool Type = Scratch RecyclePool = Scratch }