2 ## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE.
3 ## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git
6 # For Bacula release 5.0.1 (24 February 2010) -- debian 5.0.4
8 ########################################################################
9 # Bacula Director itself #
10 ########################################################################
13 Name = <%= bacula_director_name %>
14 Description = <%= hostname %> - <%= domain %> Bacula Director
15 QueryFile = "/etc/bacula/scripts/query.sql"
16 WorkingDirectory = "/var/lib/bacula"
17 PidDirectory = "/var/run/bacula"
18 Maximum Concurrent Jobs = 20
19 Password = "<%= bacula_director_secret %>"
22 # Always have localhost in, then the configured IP
23 ip = { addr = 127.0.0.1; port = 9101 }
24 ip = { addr = <%=bacula_director_address%>; port = <%=bacula_director_port%> }
30 TLS Allowed CN = "clientcerts/<%= bacula_director_address %>"
31 TLS CA Certificate File = "<%= bacula_ca_path %>"
32 # This is a server certificate, used for incoming console connections.
33 TLS Certificate = "<%= bacula_ssl_server_cert %>"
34 TLS Key = "<%= bacula_ssl_server_key %>"
37 ########################################################################
39 ########################################################################
47 File = "\\|bash -c \"df -Pkl -x tmpfs | tail -n +2 | awk '{print \$NF}' \""
48 # Dont backup directories that contain .nobackup files
49 Exclude Dir Containing = .nobackup
53 File = /var/lib/bacula
54 File = /var/cache/apt/
66 File = /home/buildd/build-trees
70 ########################################################################
71 # A fileset for the catalog, one sql dump of the db #
72 ########################################################################
80 File = "/var/lib/bacula/bacula.sql"
84 ########################################################################
86 ########################################################################
88 # When to do the backups, full backup on first sunday of the month,
89 # differential (i.e. incremental since full) every other sunday,
90 # and incremental backups other days
93 Run = Full 1st sat at 00:35
94 Run = Differential 2nd-5th sat at 00:35
95 Run = Incremental sun-fri at 00:35
98 # This schedule does the catalog. It starts after the WeeklyCycle
100 Name = "WeeklyCycleAfterBackup"
101 Run = Full sun-sat at 02:10
104 ########################################################################
105 # Generic catalog service #
106 ########################################################################
109 dbname = "service = bacula";
110 #DB Address = "<%= bacula_db_address %>";
111 #DB Port = <%= bacula_db_port %>;
113 dbpassword = "<%= bacula_db_secret %>"
116 ########################################################################
118 ########################################################################
121 mailcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\) %r\" -s \"Bacula: %t %e of %c %l\" %r"
122 operatorcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\) %r\" -s \"Bacula: Intervention needed for %j\" %r"
123 mail on error = <%= bacula_operator_email %> = all, !skipped
124 operator = <%= bacula_operator_email %> = mount
125 console = all, !skipped, !saved
126 append = "/var/lib/bacula/log" = all, !skipped
130 # Message delivery for daemon messages (no job).
133 mailcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\) %r\" -s \"Bacula daemon message\" %r"
134 mail = <%= bacula_operator_email %> = all, !skipped
135 console = all, !skipped, !saved
136 append = "/var/lib/bacula/log" = all, !skipped
139 ########################################################################
141 ########################################################################
144 Name = <%= bacula_filestor_name %>
145 Address = <%= bacula_storage_address %>
146 SDPort = <%= bacula_storage_port %>
147 Password = "<%= bacula_storage_secret %>"
148 Device = <%= bacula_filestor_device %>
149 Media Type = <%= bacula_filestor_name %>
150 Maximum Concurrent Jobs = 10
154 TLS CA Certificate File = "<%= bacula_ca_path %>"
155 # This is a client certificate, used by the director to connect to the storage daemon
156 TLS Certificate = "<%= bacula_ssl_client_cert %>"
157 TLS Key = "<%= bacula_ssl_client_key %>"
160 ########################################################################
162 ########################################################################
164 Name = <%= bacula_monitor_name %>
165 Password = "<%= bacula_monitor_secret %>"
166 CommandACL = status, .status
169 ########################################################################
170 # Jobdefinitions with defaults and stuff #
171 ########################################################################
173 Name = "Standardbackup"
176 FileSet = "Standard Set"
177 Schedule = "WeeklyCycle"
179 Pool = <%=bacula_pool_name%>
180 Differential Backup Pool = <%=bacula_pool_name%>diff
181 Incremental Backup Pool = <%=bacula_pool_name%>inc
182 Max Full Interval = 1 month
184 Write Bootstrap = "/var/lib/bacula/%c.bsr"
185 Maximum Concurrent Jobs = 20
186 Client Run After Job = "/usr/local/sbin/postbaculajob -c \"%c\" -d \"%d\" -i \"%i\" -l \"%l\" -n \"%n\" -o /var/log/bacula-main.log"
189 ########################################################################
190 # Standard Restore template, to be changed by Console program #
191 # Only one such job is needed for all Jobs/Clients/Storage ... #
192 ########################################################################
194 Name = "RestoreFiles"
196 Client = draghi.debian.org-fd
197 FileSet = "Standard Set"
198 Pool = <%=bacula_pool_name%>
200 Where = /var/tmp/bacula-restores
203 ########################################################################
205 ########################################################################
207 Name = <%= bacula_pool_name %>
209 Storage = <%=bacula_filestor_name%>
212 Volume Retention = 1 year
213 Label Format = "<%= bacula_pool_name %>.${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}_${Hour:p/2/0/r}:${Minute:p/2/0/r}"
214 Volume Use Duration = 23h
215 #Maximum Volume Jobs = 1
216 Maximum Volume Bytes = 50G
217 Action On Purge = Truncate
221 Name = <%= bacula_pool_name %>diff
223 Storage = <%=bacula_filestor_name%>
226 Volume Retention = 1 year
227 Label Format = "<%= bacula_pool_name %>diff.${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}_${Hour:p/2/0/r}:${Minute:p/2/0/r}"
228 Volume Use Duration = 23h
229 #Maximum Volume Jobs = 1
230 Maximum Volume Bytes = 50G
231 Action On Purge = Truncate
235 Name = <%= bacula_pool_name %>inc
237 Storage = <%=bacula_filestor_name%>
240 Volume Retention = 1 year
241 Label Format = "<%= bacula_pool_name %>inc.${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}_${Hour:p/2/0/r}:${Minute:p/2/0/r}"
242 Volume Use Duration = 23h
243 #Maximum Volume Jobs = 1
244 Maximum Volume Bytes = 50G
245 Action On Purge = Truncate
248 # Scratch pool definition
254 ########################################################################
256 ########################################################################
257 # Backup the catalog database (after the nightly save)
259 # Name = "BackupCatalog"
260 # JobDefs = "Standardbackup"
263 # Schedule = "WeeklyCycleAfterBackup"
264 # # This creates an ASCII copy of the catalog
265 # # Arguments to make_catalog_backup.pl are:
266 # # make_catalog_backup.pl <catalog-name>
267 # RunBeforeJob = "/etc/bacula/scripts/make_catalog_backup.pl MyCatalog"
268 # # This deletes the copy of the catalog
269 # RunAfterJob = "/etc/bacula/scripts/delete_catalog_backup"
270 # Write Bootstrap = "/var/lib/bacula/%n.bsr"
271 # Priority = 15 # run after main backup
275 # Console = "purge volume action=all allpools storage=File"
279 ########################################################################
280 # And now include all the generated configs #
281 ########################################################################
282 @|"sh -c 'for f in /etc/bacula/conf.d/*.conf ; do echo @${f} ; done'"