Skip to main content

Very simple backup application intended to be run on cron to allow user-controllable remote backups

Project description

bupper

bupper badge

bupper badge

travis badge

travis badge

Simple backup application which allows per-directory backup control by simply including a _BACKUP_THIS file.

How it works

Bupper is very simple: it will recurse through a given directory, looking for a special file indicating that it should be backedup (_BACKUP_THIS), and then it will put that directory into a .tar.gz archive, named after the directory and the current time, and scp it to a given location.

This has few moving parts and works well for a simple household-backup solution, where “whitelisting” a few important directories in your home for backup via transfer to a local network host makes the most sense.

Installation

Assuming Python’s pip is installed (for Debian-based systems, this can be installed with sudo apt-get install python-pip), bupper can be installed directly from PyPI:

pip install bupper

Python versions 3.3+ (and 2.6+) are supported and tested against.

Quick start

  1. Think about how you will configure bupper. The main thing you will want to configure is the --remote flag, which should be remote host and path, or some sort of external storage, that would allow an SSH login:

    bupper \
    --source '/home/'\
    --remote 'backupuser@remote.host:/var/backups/bupper/'
  2. Note: that ‘source’ does not actually back EVERYTHING up in that directory. Instead, it will recursively look for directories that contain a certain filename (_BACKUP_THIS).

  3. Setup bupper with your chosen configuration to run on cron at a regular time (such as daily).

  4. (Optional) Add cron jobs that clean up old backups – this is up to you how you want to do this.

Full usage

usage: bupper [-h] [-d DATE_FORMAT] [-v] [-s SOURCE] [-l LOCAL] [-r REMOTE]

Simple backup script, no diffing or anything fancy.

optional arguments:
  -h, --help            show this help message and exit
  -d DATE_FORMAT, --date-format DATE_FORMAT
                        date format in strftime
  -v, --verbose         increase output verbosity
  -s SOURCE, --source SOURCE
                        source directory to scan for bupper configs
  -l LOCAL, --local LOCAL
                        local storage of backups
  -r REMOTE, --remote REMOTE
                        remote storage of backups

Contributing

New features, tests, and bug fixes are welcome!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bupper-0.1.2.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

bupper-0.1.2-py2.py3-none-any.whl (7.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file bupper-0.1.2.tar.gz.

File metadata

  • Download URL: bupper-0.1.2.tar.gz
  • Upload date:
  • Size: 8.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for bupper-0.1.2.tar.gz
Algorithm Hash digest
SHA256 0bcdbd4c82f4d4eff0095b270186af14cf67c3906f1bd17dd8edbd9c7e77ef4d
MD5 58a2a36de4aa606e4823899514c964be
BLAKE2b-256 0321573ffbe3f4a43971207703f4a9db89d020002eb22508d3f653c256b4039e

See more details on using hashes here.

File details

Details for the file bupper-0.1.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for bupper-0.1.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 eb92653635dda2d97954698381558f4da76cd08582381afaed6388e16a5bb787
MD5 e073428164d8ac9df0ce7a88af58695b
BLAKE2b-256 76fe5116cc030b2090726a587717fea4065f90481d165a3b37d637d566f0c816

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page