1backintime-config(1) USER COMMANDS backintime-config(1)
2
3
4
6 config - BackInTime configuration files.
7
9 ~/.config/backintime/config
10 /etc/backintime/config
11
13 Back In Time was developed as pure GUI program and so most functions
14 are only useable with backintime-qt. But it is possible to use Back In
15 Time e.g. on a headless server. You have to create the configuration
16 file (~/.config/backintime/config) manually. Look inside
17 /usr/share/doc/backintime-common/examples/ for examples.
18
19 The configuration file has the following format:
20 keyword=arguments
21
22 Arguments don't need to be quoted. All characters are allowed except
23 '='.
24
25 Run 'backintime check-config' to verify the configfile, create the
26 snapshot folder and crontab entries.
27
29 config.version
30 Type: int Allowed Values: 0-99999
31 Internal version of current config
32
33 Default: 6
34
35
36 global.hash_collision
37 Type: int Allowed Values: 0-99999
38 Internal value used to prevent hash collisions on mountpoints. Do
39 not change this.
40
41 Default: 0
42
43
44 global.use_flock
45 Type: bool Allowed Values: true|false
46 Prevent multiple snapshots (from different profiles or users) to
47 be run at the same time
48
49 Default: false
50
51
52 profile<N>.name
53 Type: str Allowed Values: text
54 Name of this profile.
55
56 Default: Main profile
57
58
59 profile<N>.schedule.custom_time
60 Type: str Allowed Values: comma separated int (8,12,18,23)
61 or */3
62 Custom hours for cronjob. Only valid for profile<N>.schedule.mode
63 = 19
64
65 Default: 8,12,18,23
66
67
68 profile<N>.schedule.day
69 Type: int Allowed Values: 1-28
70 Which day of month the cronjob should run? Only valid for pro‐
71 file<N>.schedule.mode >= 40
72
73 Default: 1
74
75
76 profile<N>.schedule.mode
77 Type: int Allowed Values:
78 0|1|2|4|7|10|12|14|16|18|19|20|25|27|30|40|80
79 Which schedule used for crontab. The crontab entry will be gener‐
80 ated with 'backintime check-config'.
81 0 = Disabled
82 1 = at every boot
83 2 = every 5 minute
84 4 = every 10 minute
85 7 = every 30 minute
86 10 = every hour
87 12 = every 2 hours
88 14 = every 4 hours
89 16 = every 6 hours
90 18 = every 12 hours
91 19 = custom defined hours
92 20 = every day
93 25 = daily anacron
94 27 = when drive get connected
95 30 = every week
96 40 = every month
97 80 = every year
98
99 Default: 0
100
101
102 profile<N>.schedule.repeatedly.period
103 Type: int Allowed Values: 0-99999
104 How many units to wait between new snapshots with anacron? Only
105 valid for profile<N>.schedule.mode = 25|27
106
107 Default: 1
108
109
110 profile<N>.schedule.repeatedly.unit
111 Type: int Allowed Values: 10|20|30|40
112 Units to wait between new snapshots with anacron.
113 10 = hours
114 20 = days
115 30 = weeks
116 40 = months
117 Only valid for profile<N>.schedule.mode = 25|27
118
119 Default: 20
120
121
122 profile<N>.schedule.time
123 Type: int Allowed Values: 0-24
124 What time the cronjob should run? Only valid for pro‐
125 file<N>.schedule.mode >= 20
126
127 Default: 0
128
129
130 profile<N>.schedule.weekday
131 Type: int Allowed Values: 1 = monday - 7 = sunday
132 Which day of week the cronjob should run? Only valid for pro‐
133 file<N>.schedule.mode = 30
134
135 Default: 7
136
137
138 profile<N>.snapshots.backup_on_restore.enabled
139 Type: bool Allowed Values: true|false
140 Rename existing files before restore into FILE.backup.YYYYMMDD
141
142 Default: true
143
144
145 profile<N>.snapshots.bwlimit.enabled
146 Type: bool Allowed Values: true|false
147 Limit rsync bandwidth usage over network. Use this with mode SSH.
148 For mode Local you should rather use ionice.
149
150 Default: false
151
152
153 profile<N>.snapshots.bwlimit.value
154 Type: int Allowed Values: 0-99999
155 Bandwidth limit in KB/sec.
156
157 Default: 3000
158
159
160 profile<N>.snapshots.continue_on_errors
161 Type: bool Allowed Values: true|false
162 Continue on errors. This will keep incomplete snapshots rather
163 than deleting and start over again.
164
165 Default: true
166
167
168 profile<N>.snapshots.copy_links
169 Type: bool Allowed Values: true|false
170 When symlinks are encountered, the item that they point to
171 (the reference) is copied, rather than the symlink.
172
173 Default: false
174
175
176 profile<N>.snapshots.copy_unsafe_links
177 Type: bool Allowed Values: true|false
178 This tells rsync to copy the referent of symbolic links that
179 point outside the copied tree. Absolute symlinks are also
180 treated like ordinary files.
181
182 Default: false
183
184
185 profile<N>.snapshots.cron.ionice
186 Type: bool Allowed Values: true|false
187 Run cronjobs with 'ionice -c2 -n7'. This will give BackInTime the
188 lowest IO bandwidth priority to not interrupt any other working
189 process.
190
191 Default: true
192
193
194 profile<N>.snapshots.cron.nice
195 Type: bool Allowed Values: true|false
196 Run cronjobs with 'nice -n19'. This will give BackInTime the low‐
197 est CPU priority to not interrupt any other working process.
198
199 Default: true
200
201
202 profile<N>.snapshots.cron.redirect_stderr
203 Type: bool Allowed Values: true|false
204 redirect stderr to /dev/null in cronjobs
205
206 Default: False
207
208
209 profile<N>.snapshots.cron.redirect_stdout
210 Type: bool Allowed Values: true|false
211 redirect stdout to /dev/null in cronjobs
212
213 Default: true
214
215
216 profile<N>.snapshots.dont_remove_named_snapshots
217 Type: bool Allowed Values: true|false
218 Keep snapshots with names during smart_remove.
219
220 Default: true
221
222
223 profile<N>.snapshots.exclude.bysize.enabled
224 Type: bool Allowed Values: true|false
225 Enable exclude files by size.
226
227 Default: false
228
229
230 profile<N>.snapshots.exclude.bysize.value
231 Type: int Allowed Values: 0-99999
232 Exclude files bigger than value in MiB. With 'Full rsync mode'
233 disabled this will only affect new files because for rsync this
234 is a transfer option, not an exclude option. So big files that
235 has been backed up before will remain in snapshots even if they
236 had changed.
237
238 Default: 500
239
240
241 profile<N>.snapshots.exclude.<I>.value
242 Type: str Allowed Values: file, folder or pattern (relative
243 or absolute)
244 Exclude this file or folder. <I> must be a counter starting with
245 1
246
247 Default: ''
248
249
250 profile<N>.snapshots.exclude.size
251 Type: int Allowed Values: 0-99999
252 Quantity of profile<N>.snapshots.exclude.<I> entries.
253
254 Default: -1
255
256
257 profile<N>.snapshots.include.<I>.type
258 Type: int Allowed Values: 0|1
259 Specify if profile<N>.snapshots.include.<I>.value is a folder (0)
260 or a file (1).
261
262 Default: 0
263
264
265 profile<N>.snapshots.include.<I>.value
266 Type: str Allowed Values: absolute path
267 Include this file or folder. <I> must be a counter starting with
268 1
269
270 Default: ''
271
272
273 profile<N>.snapshots.include.size
274 Type: int Allowed Values: 0-99999
275 Quantity of profile<N>.snapshots.include.<I> entries.
276
277 Default: -1
278
279
280 profile<N>.snapshots.keep_only_one_snapshot.enabled
281 Type: bool Allowed Values: true|false
282 NOT YET IMPLEMENTED. Remove all snapshots but one.
283
284 Default: false
285
286
287 profile<N>.snapshots.local.nocache
288 Type: bool Allowed Values: true|false
289 Run rsync on local machine with 'nocache'. This will prevent
290 files from being cached in memory.
291
292 Default: false
293
294
295 profile<N>.snapshots.local_encfs.path
296 Type: str Allowed Values: absolute path
297 Where to save snapshots in mode 'local_encfs'.
298
299 Default: ''
300
301
302 profile<N>.snapshots.log_level
303 Type: int Allowed Values: 1-3
304 Log level used during takeSnapshot.
305 1 = Error
306 2 = Changes
307 3 = Info
308
309 Default: 3
310
311
312 profile<N>.snapshots.min_free_inodes.enabled
313 Type: bool Allowed Values: true|false
314 Remove snapshots until profile<N>.snapshots.min_free_inodes.value
315 free inodes in % is reached.
316
317 Default: true
318
319
320 profile<N>.snapshots.min_free_inodes.value
321 Type: int Allowed Values: 1-15
322 Keep at least value % free inodes.
323
324 Default: 2
325
326
327 profile<N>.snapshots.min_free_space.enabled
328 Type: bool Allowed Values: true|false
329 Remove snapshots until profile<N>.snapshots.min_free_space.value
330 free space is reached.
331
332 Default: true
333
334
335 profile<N>.snapshots.min_free_space.unit
336 Type: int Allowed Values: 10|20
337 10 = MB
338 20 = GB
339
340 Default: 20
341
342
343 profile<N>.snapshots.min_free_space.value
344 Type: int Allowed Values: 1-99999
345 Keep at least value + unit free space.
346
347 Default: 1
348
349
350 profile<N>.snapshots.mode
351 Type: str Allowed Values: local|local_encfs|ssh|ssh_encfs
352 Use mode (or backend) for this snapshot. Look at 'man backintime'
353 section 'Modes'.
354
355 Default: local
356
357
358 profile<N>.snapshots.<MODE>.password.save
359 Type: bool Allowed Values: true|false
360 Save password to system keyring (gnome-keyring or kwallet).
361 <MODE> must be the same as profile<N>.snapshots.mode
362
363 Default: false
364
365
366 profile<N>.snapshots.<MODE>.password.use_cache
367 Type: bool Allowed Values: true|false
368 Cache password in RAM so it can be read by cronjobs. Security is‐
369 sue: root might be able to read that password, too. <MODE> must
370 be the same as profile<N>.snapshots.mode
371
372 Default: true if home is not encrypted
373
374
375 profile<N>.snapshots.no_on_battery
376 Type: bool Allowed Values: true|false
377 Don't take snapshots if the Computer runs on battery.
378
379 Default: false
380
381
382 profile<N>.snapshots.notify.enabled
383 Type: bool Allowed Values: true|false
384 Display notifications (errors, warnings) through libnotify.
385
386 Default: true
387
388
389 profile<N>.snapshots.path
390 Type: str Allowed Values: absolute path
391 Where to save snapshots in mode 'local'. This path must contain a
392 folderstructure like 'backintime/<HOST>/<USER>/<PROFILE_ID>'
393
394 Default: ''
395
396
397 profile<N>.snapshots.path.host
398 Type: str Allowed Values: text
399 Set Host for snapshot path
400
401 Default: local hostname
402
403
404 profile<N>.snapshots.path.profile
405 Type: str Allowed Values: 1-99999
406 Set Profile-ID for snapshot path
407
408 Default: current Profile-ID
409
410
411 profile<N>.snapshots.path.user
412 Type: str Allowed Values: text
413 Set User for snapshot path
414
415 Default: local username
416
417
418 profile<N>.snapshots.path.uuid
419 Type: str Allowed Values: text
420 Devices uuid used to automatically set up udev rule if the drive
421 is not connected.
422
423 Default: ''
424
425
426 profile<N>.snapshots.preserve_acl
427 Type: bool Allowed Values: true|false
428 Preserve ACL. The source and destination systems must have
429 compatible ACL entries for this option to work properly.
430
431 Default: false
432
433
434 profile<N>.snapshots.preserve_xattr
435 Type: bool Allowed Values: true|false
436 Preserve extended attributes (xattr).
437
438 Default: false
439
440
441 profile<N>.snapshots.remove_old_snapshots.enabled
442 Type: bool Allowed Values: true|false
443 Remove all snapshots older than value + unit
444
445 Default: true
446
447
448 profile<N>.snapshots.remove_old_snapshots.unit
449 Type: int Allowed Values: 20|30|80
450 20 = days
451 30 = weeks
452 80 = years
453
454 Default: 80
455
456
457 profile<N>.snapshots.remove_old_snapshots.value
458 Type: int Allowed Values: 0-99999
459 Snapshots older than this times units will be removed
460
461 Default: 10
462
463
464 profile<N>.snapshots.rsync_options.enabled
465 Type: bool Allowed Values: true|false
466 Past additional options to rsync
467
468 Default: false
469
470
471 profile<N>.snapshots.rsync_options.value
472 Type: str Allowed Values: text
473 rsync options. Options must be quoted e.g. --exclude-
474 from="/path/to/my exclude file"
475
476 Default: ''
477
478
479 profile<N>.snapshots.smart_remove
480 Type: bool Allowed Values: true|false
481 Run smart_remove to clean up old snapshots after a new snapshot
482 was created.
483
484 Default: false
485
486
487 profile<N>.snapshots.smart_remove.keep_all
488 Type: int Allowed Values: 0-99999
489 Keep all snapshots for X days.
490
491 Default: 2
492
493
494 profile<N>.snapshots.smart_remove.keep_one_per_day
495 Type: int Allowed Values: 0-99999
496 Keep one snapshot per day for X days.
497
498 Default: 7
499
500
501 profile<N>.snapshots.smart_remove.keep_one_per_month
502 Type: int Allowed Values: 0-99999
503 Keep one snapshot per month for X month.
504
505 Default: 24
506
507
508 profile<N>.snapshots.smart_remove.keep_one_per_week
509 Type: int Allowed Values: 0-99999
510 Keep one snapshot per week for X weeks.
511
512 Default: 4
513
514
515 profile<N>.snapshots.smart_remove.run_remote_in_background
516 Type: bool Allowed Values: true|false
517 If using mode SSH or SSH-encrypted, run smart_remove in back‐
518 ground on remote machine
519
520 Default: false
521
522
523 profile<N>.snapshots.ssh.check_commands
524 Type: bool Allowed Values: true|false
525 Check if all commands (used during takeSnapshot) work like ex‐
526 pected on the remote host.
527
528 Default: true
529
530
531 profile<N>.snapshots.ssh.check_ping
532 Type: bool Allowed Values: true|false
533 Check if the remote host is available before trying to mount.
534
535 Default: true
536
537
538 profile<N>.snapshots.ssh.cipher
539 Type: str Allowed Values: default | aes192-cbc | aes256-cbc
540 | aes128-ctr | aes192-ctr | aes256-ctr | arcfour | arcfour256 |
541 arcfour128 | aes128-cbc | 3des-cbc | blowfish-cbc | cast128-cbc
542 Cipher that is used for encrypting the SSH tunnel. Depending on
543 the environment (network bandwidth, cpu and hdd performance) a
544 different cipher might be faster.
545
546 Default: default
547
548
549 profile<N>.snapshots.ssh.host
550 Type: str Allowed Values: IP or domain address
551 Remote host used for mode 'ssh' and 'ssh_encfs'.
552
553 Default: ''
554
555
556 profile<N>.snapshots.ssh.ionice
557 Type: bool Allowed Values: true|false
558 Run rsync and other commands on remote host with 'ionice -c2 -n7'
559
560 Default: false
561
562
563 profile<N>.snapshots.ssh.max_arg_length
564 Type: int Allowed Values: 0, >700
565 Maximum argument length of commands run on remote host. This can
566 be tested with 'python3 /usr/share/backintime/common/sshMaxArg.py
567 USER@HOST'.
568 0 = unlimited
569
570 Default: 0
571
572
573 profile<N>.snapshots.ssh.nice
574 Type: bool Allowed Values: true|false
575 Run rsync and other commands on remote host with 'nice -n19'
576
577 Default: false
578
579
580 profile<N>.snapshots.ssh.nocache
581 Type: bool Allowed Values: true|false
582 Run rsync on remote host with 'nocache'. This will prevent files
583 from being cached in memory.
584
585 Default: false
586
587
588 profile<N>.snapshots.ssh.path
589 Type: str Allowed Values: absolute or relative path
590 Snapshot path on remote host. If the path is relative (no leading
591 '/') it will start from remote Users homedir. An empty path will
592 be replaced with './'.
593
594 Default: ''
595
596
597 profile<N>.snapshots.ssh.port
598 Type: int Allowed Values: 0-65535
599 SSH Port on remote host.
600
601 Default: 22
602
603
604 profile<N>.snapshots.ssh.prefix.enabled
605 Type: bool Allowed Values: true|false
606 Add prefix to every command which run through SSH on remote host.
607
608 Default: false
609
610
611 profile<N>.snapshots.ssh.prefix.value
612 Type: str Allowed Values: text
613 Prefix to run before every command on remote host. Variables need
614 to be escaped with \$FOO. This doesn't touch rsync. So to add a
615 prefix for rsync use profile<N>.snapshots.rsync_options.value
616 with --rsync-path="FOO=bar:\$FOO /usr/bin/rsync"
617
618 Default: 'PATH=/opt/bin:/opt/sbin:\$PATH'
619
620
621 profile<N>.snapshots.ssh.private_key_file
622 Type: str Allowed Values: absolute path to private key file
623 Private key file used for password-less authentication on remote
624 host.
625
626 Default: ~/.ssh/id_dsa
627
628
629 profile<N>.snapshots.ssh.user
630 Type: str Allowed Values: text
631 Remote SSH user
632
633 Default: local users name
634
635
636 profile<N>.snapshots.take_snapshot_regardless_of_changes
637 Type: bool Allowed Values: true|false
638 Create a new snapshot regardless if there were changes or not.
639
640 Default: false
641
642
643 profile<N>.snapshots.use_checksum
644 Type: bool Allowed Values: true|false
645 Use checksum to detect changes rather than size + time.
646
647 Default: false
648
649
650 profile<N>.snapshots.user_backup.ionice
651 Type: bool Allowed Values: true|false
652 Run BackInTime with 'ionice -c2 -n7' when taking a manual snap‐
653 shot. This will give BackInTime the lowest IO bandwidth priority
654 to not interrupt any other working process.
655
656 Default: false
657
658
659 profile<N>.user_callback.no_logging
660 Type: bool Allowed Values: true|false
661 Do not catch std{out|err} from user-callback script. The script
662 will only write to current TTY. Default is to catch std{out|err}
663 and write it to syslog and TTY again.
664
665 Default: false
666
667
668 profiles
669 Type: str Allowed Values: int separated by colon (e.g.
670 1:3:4)
671 All active Profiles (<N> in profile<N>.snapshots...).
672
673 Default: 1
674
675
676 profiles.version
677 Type: int Allowed Values: 1
678 Internal version of profiles config.
679
680 Default: 1
681
683 backintime, backintime-qt.
684
685 Back In Time also has a website: https://github.com/bit-team/backintime
686
688 This manual page was written by BIT Team(<bit-team@lists.launch‐
689 pad.net>).
690
691
692
693version 1.3.1 Nov 2017 backintime-config(1)