PidDirectory = "@piddir@"
Maximum Concurrent Jobs = 1
Password = "@dir_password@" # Console password
- Messages = Standard
+ Messages = Daemon
}
JobDefs {
#
# 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 @archivedir@
Job {
Name = "Client1"
JobDefs = "DefaultJob"
Write Bootstrap = "@working_dir@/Client1.bsr"
}
+#Job {
+# Name = "Client2"
+# Client = @hostname@2-fd
+# JobDefs = "DefaultJob"
+# Write Bootstrap = "@working_dir@/Client2.bsr"
+#}
+
# Backup the catalog database (after the nightly save)
Job {
Name = "BackupCatalog"
FileSet="Catalog"
Schedule = "WeeklyCycleAfterBackup"
# This creates an ASCII copy of the catalog
- RunBeforeJob = "@scriptdir@/make_catalog_backup -u bacula"
+ # WARNING!!! Passing the password via the command line is insecure.
+ # see comments in make_catalog_backup for details.
+ # Arguments to make_catalog_backup are:
+ # make_catalog_backup <database-name> <user-name> <password> <host>
+ RunBeforeJob = "@scriptdir@/make_catalog_backup @db_name@ @db_user@"
# This deletes the copy of the catalog
RunAfterJob = "@scriptdir@/delete_catalog_backup"
Write Bootstrap = "@working_dir@/BackupCatalog.bsr"
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
Storage = File
Pool = Default
Messages = Standard
- Where = /tmp/bacula-restores
+ Where = @archivedir@/bacula-restores
}
# 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
+ Run = Full 1st sun at 23:05
+ Run = Differential 2nd-5th sun at 23:05
+ Run = Incremental mon-sat at 23:05
}
# This schedule does the catalog. It starts after the WeeklyCycle
Schedule {
Name = "WeeklyCycleAfterBackup"
- Run = Full sun-sat at 1:10
+ Run = Full sun-sat at 23:10
}
# This is the backup of the catalog
AutoPrune = yes # Prune expired Jobs/Files
}
-# Definiton of file storage device
+#
+# Second Client (File Services) to backup
+# You should change Name, Address, and Password before using
+#
+#Client {
+# Name = @hostname@2-fd
+# Address = @hostname@2
+# FDPort = @fd_port@
+# Catalog = MyCatalog
+# Password = "@fd_password@2" # password for FileDaemon 2
+# 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 = @hostname@ # N.B. Use a fully qualified name here
SDPort = @sd_port@
Password = "@sd_password@"
}
+
# Definition of DDS tape storage device
#Storage {
# Name = DDS-4
+# Do not use "localhost" here
# Address = @hostname@ # N.B. Use a fully qualified name here
# SDPort = @sd_port@
# Password = "@sd_password@" # password for Storage daemon
# Device = DDS-4 # must be same as Device in Storage daemon
# Media Type = DDS-4 # must be same as MediaType in Storage daemon
+# Autochanger = yes # enable for autochanger device
#}
# Definition of 8mm tape storage device
#Storage {
# Name = "8mmDrive"
+# Do not use "localhost" here
# Address = @hostname@ # N.B. Use a fully qualified name here
# SDPort = @sd_port@
# Password = "@sd_password@"
# MediaType = "8mm"
#}
+# Definition of DVD storage device
+#Storage {
+# Name = "DVD"
+# Do not use "localhost" here
+# Address = @hostname@ # N.B. Use a fully qualified name here
+# SDPort = @sd_port@
+# Password = "@sd_password@"
+# Device = "DVD Writer"
+# MediaType = "DVD"
+#}
+
# Generic catalog service
Catalog {
Name = MyCatalog
- dbname = bacula; user = bacula; password = ""
+# Uncomment the following line if you want the dbi driver
+# dbdriver = "dbi:mysql"; dbaddress = 127.0.0.1; dbport = 3306
+ dbname = @db_name@; user = @db_user@; password = ""
}
# Reasonable message delivery -- send most everything to email address
# 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@mydomain.com', is better since that tends to
+# tell (most) people that its coming from an automated source.
+
#
- mailcommand = "@sbindir@/bsmtp -h @smtp_host@ -f \"\(Bacula\) %r\" -s \"Bacula: %t %e of %c %l\" %r"
- operatorcommand = "@sbindir@/bsmtp -h @smtp_host@ -f \"\(Bacula\) %r\" -s \"Bacula: Intervention needed for %j\" %r"
+ mailcommand = "@sbindir@/bsmtp -h @smtp_host@ -f \"\(Bacula\) \<%r\>\" -s \"Bacula: %t %e of %c %l\" %r"
+ operatorcommand = "@sbindir@/bsmtp -h @smtp_host@ -f \"\(Bacula\) \<%r\>\" -s \"Bacula: Intervention needed for %j\" %r"
mail = @job_email@ = all, !skipped
operator = @job_email@ = mount
console = all, !skipped, !saved
#
append = "@working_dir@/log" = all, !skipped
}
+
+
+#
+# Message delivery for daemon messages (no job).
+Messages {
+ Name = Daemon
+ mailcommand = "@sbindir@/bsmtp -h @smtp_host@ -f \"\(Bacula\) \<%r\>\" -s \"Bacula daemon message\" %r"
+ mail = @job_email@ = all, !skipped
+ console = all, !skipped, !saved
+ append = "@working_dir@/log" = all, !skipped
+}
+
+
+
# Default pool definition
Pool {
Recycle = yes # Bacula can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 365 days # one year
- Accept Any Volume = yes # write on any volume in the pool
+}
+
+# Scratch pool definition
+Pool {
+ Name = Scratch
+ Pool Type = Backup
}
#
Name = @hostname@-mon
Password = "@mon_dir_password@"
CommandACL = status, .status
- ClientACL =
- StorageACL =
-}
\ No newline at end of file
+}