Director { # define myself
Name = @hostname@-dir
- DIRport = 8101 # where we listen for UA connections
+ DIRPort = @dirport@ # where we listen for UA connections
QueryFile = "@scriptdir@/query.sql"
WorkingDirectory = "@working_dir@"
PidDirectory = "@piddir@"
SubSysDirectory = "@subsysdir@"
+ PluginDirectory = "@sbindir@"
Maximum Concurrent Jobs = 4
+ Heartbeat Interval = 330
Password = "pNvX1WiXnwv2C/F7E52LGvw6rKjbbPvu2kyuPa9pVaL3" # Console password
Messages = Standard
}
#
# Define the main nightly save backup job
-# By default, this job will back up to disk in /tmp
+# By default, this job will back up to disk in @tmpdir@
Job {
Name = "NightlySave"
Type = Backup
Messages = Standard
Pool = Default
Write Bootstrap = "@working_dir@/NightlySave.bsr"
- Maximum Concurrent Jobs = 4
+ Maximum Concurrent Jobs = 10
+ SpoolData=yes
+ Max Run Time = 30min
+ Reschedule On Error = no
+ Reschedule Interval = 10
+ Reschedule Times = 5
+}
+
+
+#
+# Define the main nightly save backup job
+# By default, this job will back up to disk in @tmpdir@
+Job {
+ Name = "FSType"
+ Type = Backup
+ Client=@hostname@-fd
+ FileSet="FSTypeFS"
+ Storage = File
+ Messages = Standard
+ Pool = Default
+ Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Maximum Concurrent Jobs = 10
SpoolData=yes
}
+Job {
+ Name = "Simple"
+ Type = Backup
+ Client=@hostname@-fd
+ FileSet="SimpleSet"
+ Storage = File
+ Messages = Standard
+ Pool = Default
+ Maximum Concurrent Jobs = 10
+ Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+# SpoolData=yes
+}
+
+
Job {
Name = "MonsterSave"
Type = Backup
Messages = Standard
Pool = Default
Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+ Maximum Concurrent Jobs = 10
+ SpoolData=yes
+}
+
+Job {
+ Name = "MonsterFileSet"
+ Type = Backup
+ Client=@hostname@-fd
+ FileSet="MonsterFileSet"
+ Storage = File
+ Messages = Standard
+ Pool = Default
+ Maximum Concurrent Jobs = 10
+ Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+ SpoolData=yes
}
+
Job {
Name = "VerifyVolume"
Type = Verify
Messages = Standard
Pool = Default
Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+}
+
+Job {
+ Name = "VerifyData"
+ Type = Verify
+ Level = Data
+ Client=@hostname@-fd
+ FileSet="Full Set"
+ Storage = File
+ Messages = Standard
+ Pool = Default
+ Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
}
Messages = Standard
Pool = Default
Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+ SpoolData=yes
+ Maximum Concurrent Jobs = 10
+}
+
+Job {
+ Name = "DeltaTest"
+ Type = Backup
+ Client=@hostname@-fd
+ FileSet="DeltaSet"
+ Storage = File
+ Messages = Standard
+ Pool = Default
+ Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+ Maximum Concurrent Jobs = 10
}
Job {
Storage = File
Messages = Standard
Pool = Default
- Maximum Concurrent Jobs = 4
+ Maximum Concurrent Jobs = 10
+ Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+ SpoolData=yes
+}
+
+Job {
+ Name = "HardlinkTest"
+ Type = Backup
+ Client=@hostname@-fd
+ FileSet="HardlinkSet"
+ Storage = File
+ Messages = Standard
+ Pool = Default
+ Maximum Concurrent Jobs = 10
Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+ Accurate = yes
}
Job {
Messages = Standard
Pool = Default
Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+ SpoolData=yes
+ Maximum Concurrent Jobs = 10
+}
+
+Job {
+ Name = "vSphereTest"
+ Type = Backup
+ Client=@hostname@-fd
+ FileSet="vSphereSet"
+ Storage = File
+ Messages = Standard
+ Pool = Default
+ Maximum Concurrent Jobs = 10
+ Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+}
+
+Job {
+ Name = "LZOTest"
+ Type = Backup
+ Client=@hostname@-fd
+ FileSet="LZOSet"
+ Storage = File
+ Messages = Standard
+ Pool = Default
+ Maximum Concurrent Jobs = 10
+ Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+ SpoolData=yes
+}
+
+Job {
+ Name = "SparseLZOTest"
+ Type = Backup
+ Client=@hostname@-fd
+ FileSet="SparseLZOSet"
+ Storage = File
+ Messages = Standard
+ Pool = Default
+ Write Bootstrap = "@working_dir@/NightlySave.bsr"
+ Max Run Time = 30min
+ SpoolData=yes
+ Maximum Concurrent Jobs = 10
}
Job {
Messages = Standard
Pool = Default
Write Bootstrap = "@working_dir@/NightlySave.bsr"
- ClientRunBeforeJob = "/bin/sleep 60"
+ ClientRunBeforeJob = "sleep 5"
+ Max Run Time = 30min
}
Messages = Standard
Pool = Default
# This creates an ASCII copy of the catalog
- RunBeforeJob = "@sbindir@/make_catalog_backup -u bacula"
+ RunBeforeJob = "@sbindir@/make_catalog_backup -u regress"
# This deletes the copy of the catalog
RunAfterJob = "@sbindir@/delete_catalog_backup"
Write Bootstrap = "@working_dir@/BackupCatalog.bsr"
+ Max Run Time = 30min
}
JobDefs {
Storage = File
Messages = Standard
Priority = 10
+ Max Run Time = 30min
}
Job {
Name = "bug621-job-1"
Client = @hostname@-fd
FileSet="Full Set"
- ClientRunBeforeJob = "/bin/sleep 60"
+ ClientRunBeforeJob = "sleep 5"
}
Job {
Storage = File
Messages = Standard
Pool = Default
- Where = /tmp/bacula-restores
+ Where = @tmpdir@/bacula-restores
+ Max Run Time = 30min
}
# List of files to be backed up
FileSet {
Name = "Full Set"
- Include { Options { signature=MD5 }
- File = </tmp/file-list
+ Include {
+ Options { signature=MD5; sparse=yes;
+ verify=pins5 }
+ File = <@tmpdir@/file-list
+ }
+}
+
+# List of files to be backed up
+FileSet {
+ Name = "FSTypeFS"
+ Include {
+ Options {
+ signature=MD5
+ fstype = ext4
+ }
+ File = <@tmpdir@/file-list
+ }
+}
+
+
+# List of files to be backed up
+FileSet {
+ Name = "FSTypeFSEmpty"
+ Include {
+ Options {
+ signature=MD5
+ fstype = debugfs
+ }
+ File = <@tmpdir@/file-list
+ }
+}
+
+FileSet {
+ Name = "FSno5"
+ Include { Options { verify=s5 }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { compression=GZIP }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { compression=LZO }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { compression=LZO; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { compression=GZIP; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+}
+
+FileSet {
+ Name = "FS5"
+ Include { Options { signature=MD5; verify=s5 }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; compression=GZIP }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; compression=LZO }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; compression=LZO; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; compression=GZIP; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+}
+
+FileSet {
+ Name = "FS5nocheck"
+ Include { Options { verify="nog"; signature=MD5 }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; compression=GZIP }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; compression=LZO }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; compression=LZO; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=MD5; compression=GZIP; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+}
+
+FileSet {
+ Name = "FS1"
+ Include { Options { verify=s1; signature=SHA1 }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=SHA1; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=SHA1; compression=GZIP }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=SHA1; compression=LZO }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=SHA1; compression=LZO; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+ Include { Options { signature=SHA1; compression=GZIP; sparse=yes }
+ File = <@tmpdir@/file-list
+ }
+}
+
+FileSet {
+ Name = "SimpleSet"
+ Include {
+ Options { signature=MD5 }
+ File = <@tmpdir@/file-list
+ }
+}
+
+
+FileSet {
+ Name = vSphereSet
+ Include {
+ Options {
+ signature=MD5
+ compression = GZIP1
+ }
+ Plugin = "vsphere: host=@VSPHERE_HOST1@"
+ }
+}
+
+FileSet {
+ Name = vSphereSet2
+ Include {
+ Options {
+ signature=MD5
+ compression = GZIP1
+ }
+ Plugin = "vsphere: host=@VSPHERE_HOST1@"
+ Plugin = "vsphere: host=@VSPHERE_HOST2@"
}
}
signature=MD5
sparse=yes
}
- File = </tmp/file-list
+ File = <@tmpdir@/file-list
}
}
Include {
Options {
signature=MD5
- compression=GZIP
+ compression=GZIP
+ onefs=no
+ }
+ File = <@tmpdir@/file-list
+ }
+}
+
+FileSet {
+ Name = "HardlinkSet"
+ Include {
+ Options {
+ signature=MD5
+ hardlinks=yes
+ }
+ File = <@tmpdir@/file-list
+ }
+}
+
+FileSet {
+ Name = "LZOSet"
+ Include {
+ Options {
+ signature=MD5
+ compression=LZO
+ }
+ File = <@tmpdir@/file-list
+ }
+}
+
+FileSet {
+ Name = "DeltaSet"
+ Include {
+ Options {
+ signature=MD5
+ plugin = delta
}
- File = </tmp/file-list
+ File = <@tmpdir@/file-list
}
}
readfifo = yes
signature=MD5
}
- File = </tmp/file-list
+ File = <@tmpdir@/file-list
}
}
compression=GZIP
sparse=yes
}
- File = </tmp/file-list
+ File = <@tmpdir@/file-list
}
}
+FileSet {
+ Name = "SparseLZOSet"
+ Include {
+ Options {
+ signature=MD5
+ compression=LZO
+ sparse=yes
+ }
+ File = <@tmpdir@/file-list
+ }
+}
+
+FileSet {
+ Name = "MonsterFileSet"
+ Include {
+ Options {
+ signature = MD5
+ noatime = yes
+ ignore case = yes
+ Exclude = yes
+ RegexDir = "Cache"
+ RegexDir = "Windows Defender"
+ RegexDir = "Temporary Internet Files"
+ RegexDir = "bacula"
+ RegexDir = "Temp"
+
+ RegexDir = "ATI Technologies"
+
+ RegexDir = "wmdownloads"
+ RegexDir = "My Music"
+ RegexDir = "iTunes"
+ RegexDir = "Cookies"
+
+ RegexFile = "desktop.ini"
+ RegexFile = "thumbs.db"
+ RegexFile = "acrobat7.exe"
+ RegexFile = "acr6win.exe"
+ RegexFile = "AdbeRdr70_enu_full.exe"
+ RegexFile = "antivirus10_1_5.exe"
+ #thunderbird lock file
+ RegexFile = "parent.lock"
+
+ RegexDir = "Retrospect Restore Points"
+
+ #exclude i386 director of windows installer files
+ WildDir = "[A-Z]:/i386"
+
+ # Exclude Mozilla-based programs' file caches
+ WildDir = "[A-Z]:/Documents and Settings/*/Application Data/*/Profiles/*/*/ImapMail"
+ WildDir = "[A-Z]:/Users/*/Application Data/*/Profiles/*/*/ImapMail"
+
+ # Exclude user's registry files - they're always in use anyway.
+ WildFile = "[A-Z]:/Documents and Settings/*/Local Settings/Application Data/Microsoft/Windows/usrclass.*"
+ WildFile = "[A-Z]:/Users/*/Local Settings/Application Data/Microsoft/Windows/usrclass.*"
+ WildFile = "[A-Z]:/Documents and Settings/*/ntuser.*"
+ WildFile = "[A-Z]:/Users/*/ntuser.*"
+
+ WildDir = "[A-Z]:/Documents and Settings/*/Recent"
+ WildDir = "[A-Z]:/Users/*/Recent"
+
+ WildDir = "[A-Z]:/Documents and Settings/*/Local Settings/History"
+ WildDir = "[A-Z]:/Users/*/Local Settings/History"
+
+ # These are always open and unable to be backed up
+ WildFile = "[A-Z]:/Documents and Settings/All Users/Application Data/Microsoft/Network/Downloader/qmgr[01].dat"
+ WildFile = "[A-Z]:/Users/All Users/Application Data/Microsoft/Network/Downloader/qmgr[01].dat"
+
+ #Exclude all of Windows...
+ WildDir = "[A-Z]:/windows"
+ WildDir = "[A-Z]:/winnt"
+ WildDir = "[A-Z]:/winxp"
+ WildDir = "[A-Z]:/win"
+
+ #symantec antivirus app stuff
+ WildDir = "[A-Z]:/*/Symantec*"
+
+ #system volume information
+ WildDir = "[A-Z]:/System Volume Information"
+
+ WildFile = "*.tmp"
+ # ghost image and spanning files
+ WildFile = "*.gho"
+ WildFile = "*.ghs"
+
+ # Recycle bins
+ WildDir = "[A-Z]:/RECYCLER"
+ WildDir = "[A-Z]:/RECYCLER"
+ WildDir = "[A-Z]:/RECYCLED"
+ WildDir = "[A-Z]:/$RECYCLE.BIN"
+
+ # Swap files
+ WildFile = "[A-Z]:/pagefile.sys"
+
+ # These are programs and are easier to reinstall than restore from
+ # backup
+ WildDir = "[A-Z]:/cygwin"
+ WildDir = "[A-Z]:/Program Files/Adobe/Acrobat 7.0"
+ WildDir = "[A-Z]:/Program Files/Adobe/Acrobat 8.0"
+
+ WildDir = "[A-Z]:/Program Files/Common Files/Software Center"
+ WildDir = "[A-Z]:/Software Center"
+
+ WildDir = "[A-Z]:/Program Files/Grisoft"
+ WildDir = "[A-Z]:/Program Files/Java"
+ WildDir = "[A-Z]:/Program Files/Java Web Start"
+ WildDir = "[A-Z]:/Program Files/JavaSoft"
+ WildDir = "[A-Z]:/Program Files/Microsoft Office"
+ WildDir = "[A-Z]:/Program Files/Mozilla Firefox"
+ WildDir = "[A-Z]:/Program Files/Mozilla Thunderbird"
+ WildDir = "[A-Z]:/Program Files/mozilla.org"
+ WildDir = "[A-Z]:/Program Files/OpenOffice*"
+ }
+ File = <@tmpdir@/file-list
+ }
+}
#
Client {
Name = @hostname@-fd
Address = @hostname@
- FDPort = 8102
+ 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
+ Maximum Concurrent Jobs = 10
}
# Definiton of file storage device
Storage {
Name = File
Address = @hostname@ # N.B. Use a fully qualified name here
- SDPort = 8103
+ SDPort = @sdport@
Password = "ccV3lVTsQRsdIUGyab0N4sMDavui2hOBkmpBU0aQKOr9"
Device = FileStorage
Media Type = File
- Maximum Concurrent Jobs = 4
+ Maximum Concurrent Jobs = 10
+ Heartbeat Interval = 330
}
Storage {
Name = File1
Address = @hostname@ # N.B. Use a fully qualified name here
- SDPort = 8103
+ SDPort = @sdport@
Password = "ccV3lVTsQRsdIUGyab0N4sMDavui2hOBkmpBU0aQKOr9"
Device = FileStorage1
Media Type = File1
- Maximum Concurrent Jobs = 4
+ Maximum Concurrent Jobs = 10
+ Heartbeat Interval = 330
}
+Storage {
+ Name = File2
+ Address = @hostname@ # N.B. Use a fully qualified name here
+ SDPort = @sdport@
+ Password = "ccV3lVTsQRsdIUGyab0N4sMDavui2hOBkmpBU0aQKOr9"
+ Device = FileStorage2
+ Media Type = File
+ Maximum Concurrent Jobs = 10
+ Heartbeat Interval = 330
+}
# Definition of DLT tape storage device
#Storage {
# Name = DLTDrive
# Address = @hostname@ # N.B. Use a fully qualified name here
-# SDPort = 8103
+# SDPort = @sdport@
# Password = "ccV3lVTsQRsdIUGyab0N4sMDavui2hOBkmpBU0aQKOr9" # password for Storage daemon
# Device = "HP DLT 80" # must be same as Device in Storage daemon
# Media Type = DLT8000 # must be same as MediaType in Storage daemon
#Storage {
# Name = SDT-10000
# Address = @hostname@ # N.B. Use a fully qualified name here
-# SDPort = 8103
+# SDPort = @sdport@
# Password = "ccV3lVTsQRsdIUGyab0N4sMDavui2hOBkmpBU0aQKOr9" # password for Storage daemon
# Device = SDT-10000 # must be same as Device in Storage daemon
-# Media Type = DDS-4 # must be same as MediaType in Storage daemon
+# Media Type = tape # must be same as MediaType in Storage daemon
#}
# Definition of 8mm tape storage device
#Storage {
# Name = "8mmDrive"
# Address = @hostname@ # N.B. Use a fully qualified name here
-# SDPort = 8103
+# SDPort = @sdport@
# Password = "ccV3lVTsQRsdIUGyab0N4sMDavui2hOBkmpBU0aQKOr9"
# Device = "Exabyte 8mm"
# MediaType = "8mm"
# Generic catalog service
Catalog {
Name = MyCatalog
- dbname = bacula; user = bacula; password = ""
+ @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\) %r\" -s \"Bacula: %t %e of %c %l\" %r"
- operatorcommand = "@sbindir@/bsmtp -h localhost -f \"\(Bacula Regression\) %r\" -s \"Bacula: Intervention needed for %j\" %r"
- MailOnError = @job_email@ = all
- operator = @job_email@ = mount
+ mailcommand = "@sbindir@/bsmtp -h localhost -f \"\(Bacula regression\) %r\" -s \"Regression: %t %e of %c %l\" %r"
+ operatorcommand = "@sbindir@/bsmtp -h localhost -f \"\(Bacula regression\) %r\" -s \"Regression: Intervention needed for %j\" %r"
+# MailOnError = @job_email@ = all
+# operator = @job_email@ = mount
console = all, !skipped, !terminate, !restored
#
# WARNING! the following will create a file that you must cycle from
# also keep all your messages if the scroll off the console.
#
append = "@working_dir@/log" = all, !skipped
+ catalog = all, !skipped
}
Messages {
Name = NoEmail
- mailcommand = "@sbindir@/bsmtp -h localhost -f \"\(Bacula Regression\) %r\" -s \"Bacula: %t %e of %c %l\" %r"
+ mailcommand = "@sbindir@/bsmtp -h localhost -f \"\(Bacula regression\) %r\" -s \"Regression: %t %e of %c %l\" %r"
console = all, !skipped, !terminate
#
# WARNING! the following will create a file that you must cycle from
# also keep all your messages if the scroll off the console.
#
append = "@working_dir@/log" = all, !skipped
+ catalog = all, !skipped
}
AutoPrune = yes # Prune expired volumes
Volume Retention = 365d # one year
# Label Format = "TEST-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}:${NumVols}"
+# Simple Label Format = "Backup-"
+# Maximum Volume Jobs = 1
+# Maximum Volume Bytes = 1500000
}