HTTPS SSH

Safestore

Lightweight multi-function backup solution

About Safestore

This project was created to provide an easy, free, high performance way to configure reliable backups for almost any infrastructure.

  • Compatible Operating Systems:

    • Red Hat Enterprise Linux 7+
    • Fedora 25+
  • Potential Operating Systems:

    • Red Hat Enterprise Linux 6 (no packaging, services, or cron)
    • Debian (no packaging)
    • Most anything systemd based

Features

Current

  • Python Compatibility:
    • Python 2.6 - 2.7 (using Threading)
    • [WIP] Python 3.4+ (using asyncio)
  • Backups:
    • Asynchronous and synchronous backups
    • Parallel and serial backup configurations
    • Bandwidth limiting for any remote URIs
    • File exclusions
    • Filesystem boundary detection
    • Snapshot based backups for LVM
    • Database locking support for snapshots
    • Password protected remote rsync
    • Remote functionality by specifying the source as a remote source
  • Rotation:
    • Asynchronous and synchronous rotations
    • Parallel and serial rotation configurations
  • Restore:
    • Asynchronous and synchronous restoration
    • Bandwidth limiting for any remote URIs
    • File exclusions
    • Filesystem boundary detection
    • Password protected remote rsync

Planned

  • [WIP] Record keeping of deleted files (so that deletions can be played back when restoring)
  • [WIP] Allow limitations and provide sane defaults, sometimes things can go sideways with increasing load:
    • Load average
    • Disk IO
    • CPU usage
    • Memory usage
    • Network activity
  • [?] Add setup functionality for clients and servers
  • [WIP] Get unit tests working again and updated (Maybe remove unit tests?)
  • [?] Refactor
  • Bare metal backup / restore

Notes / Caveats

See the man page for safestore(1) and safestore(5) for more information.

Bugs / Errata

See the man page for safestore(1) and safestore(5) for more information.

Configuration File

See the man page for safestore.json(5) for more information.

Setup and Usage

See the man page for safestore(1) and safestore(5) for more information.