Giter Club home page Giter Club logo

backintime's Introduction

Build Status Coverage Status Source code documentation Status Translation status

Back In Time

Copyright (C) 2008-2024 Oprea Dan, Bart de Koning, Richard Bailey, Germar Reitze, Taylor Raack
Copyright (C) 2022 Christian Buhtz, Michael Büker, Jürgen Altfeld

Back In Time is an easy-to-use tool to backup files and folders. It runs on GNU Linux (not on Windows or OS X/macOS) and provides a command line tool backintime and a 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 in its own folder with copies of the original files, but unchanged files are hard-linked between snapshots to save storage space. It was inspired by FlyBack.

Maintenance status

The project is in active development since the new team joined in summer 2022. Development is done in spare time so things need to be prioritized. Stick with us, we all ♥️ Back In Time. 😁

Current focus is on fixing major issues instead of implementing new features. Read the strategy outline for details. Please see CONTRIBUTING if you are interested in the development and have a look on open issues especially those labeled as good first issues and help wanted.

The team

The current team started in summer of 2022 (with #1232) and constitutes the project's 3rd generation of maintainers. Consisting of three members with diverse backgrounds (@aryoda, @buhtz, @emtiu), the team benefits from the assistance of the former maintainer, @Germar, who contributes from behind the scenes.

All team members are engaged in every aspect of the project, including code analysis, documentation, solving issues, and the implementation of new features. This work is carried out voluntarily during their limited spare time.

Index

Documentation, FAQs, Support

Installation

Back In Time is included in many GNU/Linux distributions. Use their repositories to install it. If you want to contribute or using the latest development version of Back In Time please see section Build & Install in CONTRIBUTING.md. Also the dependencies are described there.

Alternative installation options

Besides the repositories of the official GNU/Linux distributions, there are other alternative installation options provided and maintained by third parties.

Known Problems and Workarounds

In the latest stable release:

In older releases:

More problems described in this FAQ section.

Problems in the latest stable release

All releases can be found in the list of releases.

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.

qt5_probing.py may hang with high CPU usage when running BiT as root via cron

See the related issue #1592.

The only reliable work-around is to delete (or move into another folder) the file /usr/share/backintime/common/qt5_probing.py:

mv /usr/share/backintime/common/qt5_probing.py /usr/share/backintime/

Renaming does not work!

Problems in versions older than the latest stable release

Tray icon or other icons not shown correctly

Status: Fixed in v1.4.0

Missing installations of Qt-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.

See issues #1306 and #1364.

Non-working password safe and BiT forgets passwords (keyring backend issues)

Status: Fixed in v1.3.3 (mostly) and v1.4.0

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

Incompatibility with rsync 3.2.4 or newer

Status: Fixed in v1.3.3

The release (1.3.2) and earlier versions of Back In Time are incompatible with rsync >= 3.2.4 (#1247).

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.

Contributing and other ways to support the project

See CONTRIBUTING file for an overview about the projects workflow and strategy.

May 2024

backintime's People

Contributors

germar avatar buhtz avatar aryoda avatar emtiu avatar bratdaking avatar mgerstner avatar dinoboy197 avatar jeffsilverm avatar alexschr avatar rahearn avatar belsander avatar thetimewalker avatar asensi avatar kortschak avatar sreekanth370 avatar stcksmsh avatar fantu avatar mgiuca avatar obilodeau avatar rafaelhdr avatar slater91 avatar rodrigokrz avatar saemy avatar tatokis avatar tguruswamy avatar tianyeet avatar cornpaffies avatar jarbhav avatar newhinton avatar graysky2 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.