Service for automatic backup of data to disks provided in hot-swap (SATA docking station)
Go to file
Marcel Otte d1dfb809e3 Working prototype
All the minimal features work now.
- describing a device
- describing a backup
- link a backup to a device
- schedule backups at day intervals
- mount the device
- put stuff on it
- umount the device

Downsides:
- executed as root, fully!
- all scripts are executed as root, dangerous!
- Bad and undocumented code.. :)
- No tests and only minimal checking (lotta TODOs)
2020-03-19 21:16:38 +01:00
backive Working prototype 2020-03-19 21:16:38 +01:00
doc Another progress commit 2019-05-03 21:36:44 +02:00
tests Test base for eventinterface 2019-05-03 20:36:31 +02:00
.gitignore ignore update 2020-03-18 21:09:57 +01:00
LICENSE Initial commit 2019-01-06 21:49:34 +01:00
Pipfile Last state of work from some time ago 2020-03-18 21:09:17 +01:00
Pipfile.lock Last state of work from some time ago 2020-03-18 21:09:17 +01:00
Readme.md Added Readme 2019-01-06 21:48:02 +01:00
setup.cfg Working on it ... 2019-02-22 21:26:01 +01:00
setup.py Last state of work from some time ago 2020-03-18 21:09:17 +01:00

Readme.md

backive

The name comes from the combination of backup and archive - silly, I know.

Purpose

I've a long-term backup strategy where I put some labeled hard-disk in a SATA docking station and run a backup routine. When done, this hard-disk goes back into some shelf in my attic or basement. When the time is come again to update the long-term backup the same procedure starts again.

So now there are my backup routines, which are manually currently - and that sucks.

So what this tool or service should do is the following:

  • I am able to configure based on UUIDs of the partitions which devices are allowed for backup
  • I can specify as much backup items as I want, which should include:
    • Backup local and remote data (Linux machine and SSH required)
    • Use the best tool available for the task (rsync, duplicity, whatever)
    • Even be able to "backup" without a target device (choose another path on the system)
    • (optional) Be able to run pre-backup commands (for databases maybe), remote too
  • The service has to be able to automatically detect the presence of a hard-disk, mounting it, running the backup routine and unmounting
  • Good logging about the process

What I currently see as optional:

  • Notification about the finished process (got conky running anyway, where I see the disks)

Technical goals

  • systemd service
  • udev rules for notifications about new drives
  • Python package, as easy to install as possible

Current state

In the very beginning...