Skip to main content

A simple backup solution that's light and portable

Project description

Simbak

Simbak is a simple backup solution that is aimed towards individuals who just want a quick and easy way to backup their files. Backups are stored as tar.gz files, so there is no dependence on any application to restore you backups.

Benefits of simbak

  • Simbak uses tar and gzip in order to store the backups, so that recovering the data in backups does not depend on simbak itself.
  • Simbak is also very light, portable, and very easy to use, meaning that there's no large application to install.
  • It's free and open source, meaning anyone can contribute or change simbak to meet their own needs.

Getting started

Note: This is in early development and changes to the API may be frequent. This project uses semantic versioning. The format of versions are {major}.{minor}.{patch}, so so while we are at version 0.x.x assume that each minor release has API changes.

Installation

To install simbak you can simple use pip.

$ pip install simbak

Using simbak

Command line

You can use simbak in many ways, the fastest way would be to use the simbak command in the terminal directly.

$ simbak [...]

You can also use the simbak module itself through the python executable.

$ python3 -m simbak [...]

In Python

You can use simbak within your own python code, and you can make python scripts to use simbak (a python script is prettier than shell script).

import simbak

simbak.backup(...)

Example usages

Each of these examples will achieve the same reults. They will create a backup of /home/projects/my_project/ and /home/docs/important.txt and it will store the backup in /backups/backups and /local/backups. The backup will be a tar.gz file and it will have the name of important--YYYY-MM-DD--hh-mm-ss, the time is stamped at the end of the backup to ensure the file is unique and not conflicting with other backups.

Python script example

# backup.py

import simbak

simbak.backup(
    sources=[
        "/home/projects/my_project/",
        "/home/docs/important.txt",
    ],
    destinations=[
        "/local/backups/",
        "/remote/backups/",
    ],
    name="important"
)

You can then run this script through the terminal using $ python backup.py.

Bash script example

Note: I am using a backslash at the end of each line in order to have a command spread across multiple lines, this helps readability.

# backup.bash

simbak \
    --source \
        "/home/projects/my_project/" \
        "/home/docs/important.txt" \
    --destination \
        "/local/backups/" \
        "/remote/backups/" \
    --name "important"

Terminal

Using simbak directly in the terminal isn't recommended unless you are backing up one directory or file to one location, as you can see the lines can get quite long.

$ simbak -s "/home/projects/my_project/" "/home/docs/important.txt" \
> -d "/local/backups/" "/remote/backups/" \
> --name "important"

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

simbak-0.2.1.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

simbak-0.2.1-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file simbak-0.2.1.tar.gz.

File metadata

  • Download URL: simbak-0.2.1.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.3

File hashes

Hashes for simbak-0.2.1.tar.gz
Algorithm Hash digest
SHA256 33c269f8eb459bbd362ad4e78f1c4989c9ee0038bfa037acc48500e013a46d71
MD5 8287048f27f57425f23d8d10b3dfd2bd
BLAKE2b-256 b49e8c2df78dad6cd1c1747f59c5697e7ec353e5eeb7cb73405adc20de6a41c7

See more details on using hashes here.

File details

Details for the file simbak-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: simbak-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 9.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.3

File hashes

Hashes for simbak-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b312a552ab2c9d2ce7c578a0fe245152360249710d3336c34f5ccaabfdd5f092
MD5 f5ace189e082d09473f36b7037b9f2cb
BLAKE2b-256 73e2b3d611bc00cf75a7dee90fdcd928b2af6bd8d4049734924a4be9476b17f7

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