table of contents
backintime-config(1) | USER COMMANDS | backintime-config(1) |
NAME¶
config - BackInTime configuration files.
SYNOPSIS¶
~/.config/backintime/config
/etc/backintime/config
DESCRIPTION¶
Back In Time was developed as pure GUI program and so most functions are only usable with backintime-qt. But it is possible to use Back In Time e.g. on a headless server. You have to create the configuration file (~/.config/backintime/config) manually. Look inside /usr/share/doc/backintime-common/examples/ for examples.
The configuration file has the following format:
keyword=arguments
Arguments don't need to be quoted. All characters are allowed except '='.
Run 'backintime check-config' to verify the configfile, create the snapshot folder and crontab entries.
POSSIBLE KEYWORDS¶
Internal value used to prevent hash collisions on mountpoints. Do not change this.
Default: 0
Language code (ISO 639) used to translate the user interface. If empty the operating systems current local is used. If 'en' the translation is not active and the original English source strings are used. It is the same if the value is unknown.
Default: ''
Prevent multiple snapshots (from different profiles or users) to be run at the same time
Default: false
Name of this profile.
Default: Main profile
Custom hours for cronjob. Only valid for profile<N>.schedule.mode = 19
Default: 8,12,18,23
Which day of month the cronjob should run? Only valid for profile<N>.schedule.mode >= 40
Default: 1
Which schedule used for crontab. The crontab entry will be generated with 'backintime check-config'.
0 = Disabled
1 = at every boot
2 = every 5 minute
4 = every 10 minute
7 = every 30 minute
10 = every hour
12 = every 2 hours
14 = every 4 hours
16 = every 6 hours
18 = every 12 hours
19 = custom defined hours
20 = every day
25 = daily anacron
27 = when drive get connected
30 = every week
40 = every month
80 = every year
Default: 0
How many units to wait between new snapshots with anacron? Only valid for profile<N>.schedule.mode = 25|27
Default: 1
Units to wait between new snapshots with anacron.
10 = hours
20 = days
30 = weeks
40 = months
Only valid for profile<N>.schedule.mode = 25|27
Default: 20
Position-coded number with the format "hhmm" to specify the hour and minute the cronjob should start (eg. 2015 means a quarter past 8pm). Leading zeros can be omitted (eg. 30 = 0030). Only valid for profile<N>.schedule.mode = 20 (daily), 30 (weekly), 40 (monthly) and 80 (yearly)
Default: 0
Which day of week the cronjob should run? Only valid for profile<N>.schedule.mode = 30
Default: 7
Rename existing files before restore into FILE.backup.YYYYMMDD
Default: true
Limit rsync bandwidth usage over network. Use this with mode SSH. For mode Local you should rather use ionice.
Default: false
Bandwidth limit in KB/sec.
Default: 3000
Continue on errors. This will keep incomplete snapshots rather than deleting and start over again.
Default: true
When symlinks are encountered, the item that they point to (the reference) is copied, rather than the symlink.
Default: false
This tells rsync to copy the referent of symbolic links that point outside the copied tree. Absolute symlinks are also treated like ordinary files.
Default: false
Run cronjobs with 'ionice -c2 -n7'. This will give BackInTime the lowest IO bandwidth priority to not interrupt any other working process.
Default: true
Run cronjobs with 'nice -n19'. This will give BackInTime the lowest CPU priority to not interrupt any other working process.
Default: true
redirect stderr to /dev/null in cronjobs
Default: False
redirect stdout to /dev/null in cronjobs
Default: true
Keep snapshots with names during smart_remove.
Default: true
Enable exclude files by size.
Default: false
Exclude files bigger than value in MiB. With 'Full rsync mode' disabled this will only affect new files because for rsync this is a transfer option, not an exclude option. So big files that has been backed up before will remain in snapshots even if they had changed.
Default: 500
Exclude this file or folder. <I> must be a counter starting with 1
Default: ''
Quantity of profile<N>.snapshots.exclude.<I> entries.
Default: -1
Specify if profile<N>.snapshots.include.<I>.value is a folder (0) or a file (1).
Default: 0
Include this file or folder. <I> must be a counter starting with 1
Default: ''
Quantity of profile<N>.snapshots.include.<I> entries.
Default: -1
NOT YET IMPLEMENTED. Remove all snapshots but one.
Default: false
Run rsync on local machine with 'nocache'. This will prevent files from being cached in memory.
Default: false
Where to save snapshots in mode 'local_encfs'.
Default: ''
Log level used during takeSnapshot.
1 = Error
2 = Changes
3 = Info
Default: 3
Remove snapshots until profile<N>.snapshots.min_free_inodes.value free inodes in % is reached.
Default: true
Keep at least value % free inodes.
Default: 2
Remove snapshots until profile<N>.snapshots.min_free_space.value free space is reached.
Default: true
10 = MB
20 = GB
Default: 20
Keep at least value + unit free space.
Default: 1
Use mode (or backend) for this snapshot. Look at 'man backintime' section 'Modes'.
Default: local
Save password to system keyring (gnome-keyring or kwallet). <MODE> must be the same as profile<N>.snapshots.mode
Default: false
Cache password in RAM so it can be read by cronjobs. Security issue: root might be able to read that password, too. <MODE> must be the same as profile<N>.snapshots.mode
Default: true if home is not encrypted
Don't take snapshots if the Computer runs on battery.
Default: false
Display notifications (errors, warnings) through libnotify.
Default: true
Use rsync's "--one-file-system" to avoid crossing filesystem boundaries when recursing.
Default: false
Where to save snapshots in mode 'local'. This path must contain a folderstructure like 'backintime/<HOST>/<USER>/<PROFILE_ID>'
Default: ''
Set Host for snapshot path
Default: local hostname
Set Profile-ID for snapshot path
Default: current Profile-ID
Set User for snapshot path
Default: local username
Devices uuid used to automatically set up udev rule if the drive is not connected.
Default: ''
Preserve ACL. The source and destination systems must have compatible ACL entries for this option to work properly.
Default: false
Preserve extended attributes (xattr).
Default: false
Remove all snapshots older than value + unit
Default: true
20 = days
30 = weeks
80 = years
Default: 80
Snapshots older than this times units will be removed
Default: 10
Past additional options to rsync
Default: false
rsync options. Options must be quoted e.g. --exclude-from="/path/to/my exclude file"
Default: ''
Run smart_remove to clean up old snapshots after a new snapshot was created.
Default: false
Keep all snapshots for X days.
Default: 2
Keep one snapshot per day for X days.
Default: 7
Keep one snapshot per month for X month.
Default: 24
Keep one snapshot per week for X weeks.
Default: 4
If using mode SSH or SSH-encrypted, run smart_remove in background on remote machine
Default: false
Check if all commands (used during takeSnapshot) work like expected on the remote host.
Default: true
Check if the remote host is available before trying to mount.
Default: true
Cipher that is used for encrypting the SSH tunnel. Depending on the environment (network bandwidth, cpu and hdd performance) a different cipher might be faster.
Default: default
Remote host used for mode 'ssh' and 'ssh_encfs'.
Default: ''
Run rsync and other commands on remote host with 'ionice -c2 -n7'
Default: false
Maximum command length of commands run on remote host. This can be tested for all ssh profiles in the configuration with 'python3 /usr/share/backintime/common/sshMaxArg.py [initial_ssh_cmd_length]'.
0 = unlimited
Default: 0
Run rsync and other commands on remote host with 'nice -n19'
Default: false
Run rsync on remote host with 'nocache'. This will prevent files from being cached in memory.
Default: false
Snapshot path on remote host. If the path is relative (no leading '/') it will start from remote Users homedir. An empty path will be replaced with './'.
Default: ''
SSH Port on remote host.
Default: 22
Add prefix to every command which run through SSH on remote host.
Default: false
Prefix to run before every command on remote host. Variables need to be escaped with \$FOO. This doesn't touch rsync. So to add a prefix for rsync use profile<N>.snapshots.rsync_options.value with --rsync-path="FOO=bar:\$FOO /usr/bin/rsync"
Default: 'PATH=/opt/bin:/opt/sbin:\$PATH'
Private key file used for password-less authentication on remote host.
Default: ~/.ssh/id_dsa
Remote SSH user
Default: local users name
Create a new snapshot regardless if there were changes or not.
Default: false
Use checksum to detect changes rather than size + time.
Default: false
Run BackInTime with 'ionice -c2 -n7' when taking a manual snapshot. This will give BackInTime the lowest IO bandwidth priority to not interrupt any other working process.
Default: false
Do not catch std{out|err} from user-callback script. The script will only write to current TTY. Default is to catch std{out|err} and write it to syslog and TTY again.
Default: false
All active Profiles (<N> in profile<N>.snapshots...).
Default: 1
Internal version of profiles config.
Default: 1
SEE ALSO¶
backintime(1), backintime-qt(1), backintime-askpass(1)
Back In Time project website: https://github.com/bit-team/backintime
Back In Time mailing list: https://mail.python.org/mailman3/lists/bit-dev.python.org
AUTHOR¶
Back In Time Team
August 2024 | version 1.5.2 |