SYNOPSIS

~/.config/backintime/config

/etc/backintime/config

DESCRIPTION

Back In Time was developed as pure GUI program and so most functions are only useable with backintime-gnome or backintime-kde4. 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/examples/ for examples.

The configuration file has the following format:

keyword=arguments

Arguments don't need to be quoted. All characters are allowed except '='.

The given path (profile<N>.snapshots.path, profile<N>.snapshots.local_encfs.path or profile<N>.snapshots.ssh.path) must contain a folderstructure like backintime/<HOST>/<USER>/<PROFILE_ID>. This has to be created manually.

Also the crontab entry for automatic backup shedules has to be created manually.

crontab example:

0 */2 * * * nice -n 19 ionice -c2 -n7 /usr/bin/backintime --backup-job >/dev/null 2>&1

POSSIBLE KEYWORDS

global.hash_collision

Type: int Allowed Values: 0-99999

Internal value used to prevent hash collisions on mountpoints. Do not change this.

Default: 0

profile<N>.name

Type: str Allowed Values: text

Name of this profile.

Default: Main profile

profile<N>.snapshots.automatic_backup_anacron_period

Type: int Allowed Values: 0-99999

How many days to wait between new snapshots with anacron? Only validfor profile<N>.snapshots.automatic_backup_mode = 25|27

Default: 1

profile<N>.snapshots.automatic_backup_day

Type: int Allowed Values: 1-28

Which day of month the cronjob should run? Only valid for profile<N>.snapshots.automatic_backup_mode >= 40

Default: 1

profile<N>.snapshots.automatic_backup_mode

Type: int Allowed Values: 0|1|2|4|7|10|12|14|16|18|19|20|25|27|30|40|80

Which shedule used for crontab. Note that the crontab entry is only generated during saving in settings dialog. If you don't run a GUI version of BackInTime you'll have to create the crontab entry on your own.

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

profile<N>.snapshots.automatic_backup_time

Type: int Allowed Values: 0-24

What time the cronjob should run? Only valid for profile<N>.snapshots.automatic_backup_mode >= 20

Default: 0

profile<N>.snapshots.automatic_backup_weekday

Type: int Allowed Values: 1 = monday - 7 = sunday

Which day of week the cronjob should run? Only valid for profile<N>.snapshots.automatic_backup_mode = 30

Default: 7

profile<N>.snapshots.backup_on_restore.enabled

Type: bool Allowed Values: true|false

Rename existing files before restore into FILE.backup.YYYYMMDD

Default: true

profile<N>.snapshots.bwlimit.enabled

Type: bool Allowed Values: true|false

Limit rsync bandwidth usage over network. Use this with mode SSH. For mode Local you should rather use ionice.

Default: false

profile<N>.snapshots.bwlimit.value

Type: int Allowed Values: 0-99999

Bandwidth limit in KB/sec.

Default: 3000

profile<N>.snapshots.check_for_changes

Type: bool Allowed Values: true|false

Perform a dry-run before taking snapshots. Don't take a new snapshot if nothing has changed.

Default: true

profile<N>.snapshots.continue_on_errors

Type: bool Allowed Values: true|false

Continue on errors. This will keep incomplete snapshots rather than deleting and start over again.

Default: true

profile<N>.snapshots.copy_links

Type: bool Allowed Values: true|false

When symlinks are encountered, the item that they point to (the referent) is copied, rather than the symlink.

Default: false

profile<N>.snapshots.copy_unsafe_links

Type: bool Allowed Values: true|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

profile<N>.snapshots.cron.ionice

Type: bool Allowed Values: true|false

Run cronjobs with 'ionice -c2 -n7'. This will give BackInTime the lowest IO bandwidth priority to not interupt any other working process.

Note that the crontab entry is only generated during saving in settings dialog. If you don't run a GUI version of BackInTime you'll have to create the crontab entry on your own.

Default: true

profile<N>.snapshots.cron.nice

Type: bool Allowed Values: true|false

Run cronjobs with 'nice -n 19'. This will give BackInTime the lowest CPU priority to not interupt any other working process.

Note that the crontab entry is only generated during saving in settings dialog. If you don't run a GUI version of BackInTime you'll have to create the crontab entry on your own.

Default: true

profile<N>.snapshots.custom_backup_time

Type: str Allowed Values: comma separated int (8,12,18,23) or */3

Custom hours for cronjob. Only valid for profile<N>.snapshots.automatic_backup_mode = 19

Default: 8,12,18,23

profile<N>.snapshots.dont_remove_named_snapshots

Type: bool Allowed Values: true|false

Keep snapshots with names during smart_remove.

Default: true

profile<N>.snapshots.exclude.<I>.value

Type: str Allowed Values: file, folder or pattern (relative or absolute)

Exclude this file or folder. <I> must be a counter starting with 1

Default: ''

profile<N>.snapshots.exclude.size

Type: int Allowed Values: 1-99999

Quantity of exclude entrys.

Default: -1

profile<N>.snapshots.full_rsync

Type: bool Allowed Values: true|false

Full rsync mode. May be faster but snapshots are not read-only anymore and destination file-system must support all linux attributes (date, rights, user, group...)

Default: false

profile<N>.snapshots.gnu_find_suffix_support

Type: bool Allowed Values: true|false

Remote SSH host support GNU find suffix (find -exec COMMAND {} +).

Default: true

profile<N>.snapshots.include.<I>.type

Type: int Allowed Values: 0|1

Specify if profile<N>.snapshots.include.<I>.value is a folder (0) or a file (1).

Default: 0

profile<N>.snapshots.include.<I>.value

Type: str Allowed Values: absolute path

Include this file or folder. <I> must be a counter starting with 1

Default: ''

profile<N>.snapshots.include.size

Type: int Allowed Values: 1-99999

Quantity of include entrys.

Default: -1

profile<N>.snapshots.keep_only_one_snapshot.enabled

Type: bool Allowed Values: true|false

NOT YET IMPLEMENTED. Remove all snapshots but one.

Default: false

profile<N>.snapshots.local_encfs.path

Type: str Allowed Values: absolute path

Where to save snapshots in mode 'local_encfs'. The encrypted path must contian a folderstructure like 'backintime/<HOST>/<USER>/<PROFILE_ID>'

Default: ''

profile<N>.snapshots.log_level

Type: int Allowed Values: 1-3

Log level used during take_snapshot.

1 = Error

2 = Changes

3 = Info

Default: 3

profile<N>.snapshots.min_free_inodes.enabled

Type: bool Allowed Values: true|false

Remove snapshots until profile<N>.snapshots.min_free_inodes.value free inodes in % is reached.

Default: true

profile<N>.snapshots.min_free_inodes.value

Type: int Allowed Values: 1-15

Keep at least value % free inodes.

Default: 2

profile<N>.snapshots.min_free_space.enabled

Type: bool Allowed Values: true|false

Remove snapshots until profile<N>.snapshots.min_free_space.value free space is reached.

Default: true

profile<N>.snapshots.min_free_space.unit

Type: int Allowed Values: 10|20

10 = MB

20 = GB

Default: 20

profile<N>.snapshots.min_free_space.value

Type: int Allowed Values: 1-99999

Keep at least value + unit free space.

Default: 1

profile<N>.snapshots.mode

Type: str Allowed Values: local|local_encfs|ssh|ssh_encfs

Use mode (or backend) for this snapshot. Look at 'man backintime' section 'Modes'.

Default: local

profile<N>.snapshots.<MODE>.password.save

Type: bool Allowed Values: true|false

Save password to system keyring (gnome-keyring or kwallet). <MODE> must be the same as profile<N>.snapshots.mode

Default: false

profile<N>.snapshots.<MODE>.password.use_cache

Type: bool Allowed Values: true|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

profile<N>.snapshots.no_on_battery

Type: bool Allowed Values: true|false

Don't take snapshots if the Computer runs on battery.

Default: false

profile<N>.snapshots.notify.enabled

Type: bool Allowed Values: true|false

Display notifications (errors, warnings) through libnotify.

Default: true

profile<N>.snapshots.path

Type: str Allowed Values: absolute path

Where to save snapshots in mode 'local'. This path must contain a folderstructure like 'backintime/<HOST>/<USER>/<PROFILE_ID>'

Default: ''

profile<N>.snapshots.path.auto

Type: bool Allowed Values: true|false

Automaticaly set HOST, USER and PROFILE_ID for snapshot path.

Default: true

profile<N>.snapshots.path.host

Type: str Allowed Values: text

Set Host for snapshot path if profile<N>.snapshots.path.auto is false

Default: local hostname

profile<N>.snapshots.path.profile

Type: str Allowed Values: 1-99999

Set Profile-ID for snapshot path if profile<N>.snapshots.path.auto is false

Default: current Profile-ID

profile<N>.snapshots.path.user

Type: str Allowed Values: text

Set User for snapshot path if profile<N>.snapshots.path.auto is false

Default: local username

profile<N>.snapshots.preserve_acl

Type: bool Allowed Values: true|false

Preserve ACL. The source and destination systems must have compatible ACL entries for this option to work properly.

Default: false

profile<N>.snapshots.preserve_xattr

Type: bool Allowed Values: true|false

Preserve extended attributes (xattr).

Default: false

profile<N>.snapshots.remove_old_snapshots.enabled

Type: bool Allowed Values: true|false

Remove all snapshots older than value + unit

Default: true

profile<N>.snapshots.remove_old_snapshots.unit

Type: int Allowed Values: 20|30|80

20 = days

30 = weeks

80 = years

Default: 80

profile<N>.snapshots.remove_old_snapshots.value

Type: int Allowed Values: 0-99999

Snapshots older than this times units will be removed

Default: 10

profile<N>.snapshots.smart_remove

Type: bool Allowed Values: true|false

Run smart_remove to clean up old snapshots after a new snapshot was created.

Default: false

profile<N>.snapshots.smart_remove.keep_all

Type: int Allowed Values: 0-99999

Keep all snapshots for X days.

Default: 2

profile<N>.snapshots.smart_remove.keep_one_per_day

Type: int Allowed Values: 0-99999

Keep one snapshot per day for X days.

Default: 7

profile<N>.snapshots.smart_remove.keep_one_per_month

Type: int Allowed Values: 0-99999

Keep one snapshot per month for X month.

Default: 24

profile<N>.snapshots.smart_remove.keep_one_per_week

Type: int Allowed Values: 0-99999

Keep one snapshot per week for X weeks.

Default: 4

profile<N>.snapshots.ssh.cipher

Type: str Allowed Values: default|aes192-cbc|aes256-cbc|aes128-ctr|aes192-ctr|aes256-ctr|arcfour|arcfour256|arcfour128|aes128-cbc|3des-cbc|blowfish-cbc|cast128-cbc

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

profile<N>.snapshots.ssh.host

Type: str Allowed Values: IP or domain address

Remote host used for mode 'ssh' and 'ssh_encfs'.

Default: ''

profile<N>.snapshots.ssh.ionice

Type: bool Allowed Values: true|false

Run rsync and other commands on remote host with 'ionice -c2 -n7'

Default: false

profile<N>.snapshots.ssh.nice

Type: bool Allowed Values: true|false

Run rsync and other commands on remote host with 'nice -n 19'

Default: false

profile<N>.snapshots.ssh.path

Type: str Allowed Values: absolute or relative path

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 './'. This path must contain a folderstructure like 'backintime/<HOST>/<USER>/<PROFILE_ID>'

Default: ''

profile<N>.snapshots.ssh.port

Type: int Allowed Values: 0-65535

SSH Port on remote host.

Default: 22

profile<N>.snapshots.ssh.private_key_file

Type: str Allowed Values: absolute path to private key file

Private key file used for password-less authentication on remote host.

Default: ~/.ssh/id_dsa

profile<N>.snapshots.ssh.user

Type: str Allowed Values: text

Remote SSH user

Default: local users name

profile<N>.snapshots.take_snapshot.<STEP>.user.script

Type: str Allowed Values: absolute path

Run this scrip on events defined by <STEP>.

Possible events for <STEP>:

  before
  after
  new_snapshot
  error

Default: ''

profile<N>.snapshots.use_checksum

Type: bool Allowed Values: true|false

Use checksum to detect changes rather than size + time.

Default: false

profile<N>.snapshots.user_backup.ionice

Type: bool Allowed Values: true|false

Run BackInTime with 'ionice -c2 -n7' when taking a manual snapshot. This will give BackInTime the lowest IO bandwidth priority to not interupt any other working process.

Default: false

profiles

Type: str Allowed Values: int seperated by colon (e.g. 1:3:4)

All active Profiles (<N> in profile<N>.snapshots...).

Default: 1

profiles.version

Type: int Allowed Values: 1

Internal version of profiles config.

Default: 1

RELATED TO backintime-config…

backintime, backintime-gnome, backintime-kde4.

Back In Time also has a website: http://backintime.le-web.org

AUTHOR

This manual page was written by BIT Team(<[email protected]>).