Back In Time
Copyright (C) 2008-2022 Oprea Dan, Bart de Koning, Richard Bailey, Germar Reitze, Taylor Raack
It is an easy-to-use backup tool for files and folders.
It runs on GNU Linux and provides a command line tool backintime
and a
Qt5 GUI backintime-qt
both written in Python3. It uses
rsync
to take manual or scheduled snapshots and
stores them locally or remotely through SSH. Each snapshot is its own folder
with copies of the original files, but unchanged files are hard-linked between
snapshots to save space.
It was inspired by FlyBack.
You only need to specify 3 things:
- What folders to back up.
- Where to save snapshots.
- The backup frequency (manual, every hour, every day, every month).
Maintenance status
The development of this project has been dormant for a while. But a small team has started
in summer 2022 to get things moving again. Stick with us, we all
We are currently trying to fix the major issues while not implementing new features. If you are interested in the development, please see CONTRIBUTING.
Index
Documentation, FAQs, Support
- End user documentation (not totally up-to-date)
- FAQ - Frequently Asked Questions
- Source code documentation for developers
- Use Issues to ask questions and report bugs.
- Mailing list bit-dev
Installation
Back In Time is included in many distributions. Use their repositories to
install it. If you want to contribute or using the latest development version
of Back In Time please see Build & Install in our
CONTRIBUTING.md
. There you will also find the
dependencies.
If your GNU/Linux distribution don't offer an official package for Back In Time please open an issue there and let us know about it. Until then you can use the following alternative options.
Alternative installation options
PPA for Ubuntu and Debian-based distributions
There is a PPA (Private Package Archive) with current stable version
(ppa:bit-team/stable
) and a testing PPA (ppa:bit-team/testing
).
# You can ignore "Warning: apt-key is deprecated..." for now (see issue #1338)
sudo add-apt-repository ppa:bit-team/stable
sudo apt-get update
sudo apt-get install backintime-qt
or
sudo add-apt-repository ppa:bit-team/testing
sudo apt-get update
sudo apt-get install backintime-qt
ArchLinux
There is an AUR package
backintime
that also
includes the GUI (backintime-qt
).
# You need to import a public key once before installing
gpg --keyserver pgp.mit.edu --recv-keys 615F366D944B4826
# Fingerprint: 3E70 692E E3DB 8BDD A599 1C90 615F 366D 944B 4826
wget https://aur.archlinux.org/cgit/aur.git/snapshot/backintime.tar.gz
tar xvzf backintime.tar.gz
cd backintime
makepkg -srci
An alternative way of installation clones the AUR
package which has
the advantage to use git pull
instead of downloading backintime.tar.gz
to be prepared to build an updated version of the package:
git clone https://aur.archlinux.org/backintime.git
# Optional: Edit PKGBUILD to comment the `make test` line for the first-time installation of version 1.3.2 or less
cd backintime
makepkg -si
Known Problems and Workarounds
- File permissions handling and therefore possible non-differential backups
- Non-working password safe and BiT forgets passwords (keyring backend issues)
- Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
- Tray icon or other icons not shown correctly
- Problems in versions older then the last stable release
File permissions handling and therefore possible non-differential backups
In version 1.2.0, the handling of file permissions changed.
In versions <= 1.1.24 (until 2017) all file permissions were set to -rw-r--r--
in the backup target.
In versions >= 1.2.0 (since 2019) rsync
is executed with --perms
option which tells rsync
to
preserve the source file permission.
Therefore backups can be larger and slower, especially the first backup after upgrading to a version >= 1.2.0.
If you don't like the new behavior, you can use Expert Options -> Paste additional options to rsync
to add --no-perms --no-group --no-owner
to it.
Note that the exact file permissions can still be found in fileinfo.bz2
and are also considered when restoring
files.
Non-working password safe and BiT forgets passwords (keyring backend issues)
Back in Time does only support selected "known-good" backends
to set and query passwords from a user-session password safe by
using the keyring
library.
Enabling a supported keyring requires manual configuration of a configuration file until there is e.g. a settings GUI for this.
Symptoms are DEBUG log output (with the command line argument --debug
) of keyring problems can be recognized by output like:
DEBUG: [common/tools.py:829 keyringSupported] No appropriate keyring found. 'keyring.backends...' can't be used with BackInTime
DEBUG: [common/tools.py:829 keyringSupported] No appropriate keyring found. 'keyring.backends.chainer' can't be used with BackInTime
To diagnose and solve this follow these steps in a terminal:
# Show default backend
python3 -c "import keyring.util.platform_; print(keyring.get_keyring().__module__)"
# List available backends:
keyring --list-backends
# Find out the config file folder:
python3 -c "import keyring.util.platform_; print(keyring.util.platform_.config_root())"
# Create a config file named "keyringrc.cfg" in this folder with one of the available backends (listed above)
[backend]
default-keyring=keyring.backends.kwallet.DBusKeyring
See also issue #1321
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
In newer Ubuntu-based distros you may get this warning if you manually install Back In Time as described in the Installation section here.
The reason is that public keys of signed packages shall be stored in a new folder now (for details see https://itsfoss.com/apt-key-deprecated/).
You can currently ignore this warning until we have found a reliable way to support all Ubuntu distros (older and newer ones).
This issue is tracked in #1338.
Tray icon or other icons not shown correctly
Missing installations of Qt5-supported themes and icons can cause this effect. Back In Time may activate the wrong theme in this case leading to some missing icons. A fix for the next release is in preparation.
As clean solution, please check your Linux settings (Appearance, Styles, Icons) and install all themes and icons packages for your preferred style via your package manager.
Problems in versions older then the last stable release
Incompatibility with rsync 3.2.4 or newer
The release (1.3.2
) and earlier versions of Back In Time are incompatible with rsync >= 3.2.4
(#1247). The problem is fixed in the current master branch of that repo and will be released with the next release (1.3.3
) of Back In Time.
If you use rsync >= 3.2.4
and backintime <= 1.3.2
there is a workaround. Add --old-args
in Expert Options / Additional options to rsync. Note that some GNU/Linux distributions (e.g. Manjaro) using a workaround with environment variable RSYNC_OLD_ARGS
in their distro-specific packages for Back In Time. In that case you may not see any problems.
Python 3.10 compatibility and Ubuntu version
Back In Time versions older than 1.3.2 do not start with Python >= 3.10.
Ubuntu 22.04 LTS ships with Python 3.10 and backintime 1.2.1, but has applied
a patch
to make it work. If you want to update to backintime 1.3.2 in Ubuntu, you may use the PPA: see under INSTALL/Ubuntu PPA
.
March 2023