Duplicity [1] is a free software project that creates incremental backups and encrypts them using GPG. It can use Backblaze B2 [2] as a remote synchronization option, which when I looked at options last year was also the cheapest cloud storage provider anywhere (if this has changed, let me know!). Duplicity also supports a very wide array of other cloud storage services if you'd like to use another one [1].
The killer feature Duplicity has for consumer use is that it's probably the only (?) backup program on Linux that has an actual quality desktop GUI called Déja Dup [3] that's included by default in Ubuntu. It works somewhat similar to how Time Machine works on Macs. But if you need to backup headless systems the Duplicity command line interface works fine as well.
When it comes to backup features it's not the most powerful tool compared to some other solutions like Attic or Borg, but I think the GUI and out-of-the-box (encrypted) integration with cloud services make it one of the most user friendly solutions on Linux.
While it works well, Duplicity is rather slow and only supports expensive full-incremental-full backup cycles.
Modern incremental-forever backup tools like borg[1] (fork of Attic[2]) are much faster since they are based on block hashing, which also gets you deduplication for free.
Basically, a backup is a set of hashes - this means that you can selectively delete or retain old backups without having to merge them.
I built a >50 TB enterprise backup cluster with borg and it works extremely well.
For the "cheap" part one'll probably need a system that has erasure coding and can survive partial outages.
E.g. if one backs up to hubiC, OneDrive and Google Drive, with a RAID5-like redundancy, they can have just 33% overhead and still be sure shall any of those vendors discontinue the service or suffer a failure, their data would be still safe. Some call that RAIC - Redundant Array of Inexpensive Clouds.
git-annex and Tahoe-LAFS do this, but they're not actual backup solutions.
We've handled backup with Duplicity for various things, and found it useful.
If you go with this one, do be aware that by its nature, restores when you've done a lot of incremental backups can be extremely slow. (Think hours, where other systems would retrieve the data in minutes if not seconds.)
That means you really need to be a doing a full, and therefore also slow, backup reasonably frequently to keep Duplicity usable. As a rule of thumb, we found a full backup each month and dailies each night was just about tolerable even if you needed a restore quite late in the month, but even then a 10GB backup with 30 days of incrementals on top could be looking at an hour or more to retrieve a single file.
As I understand it, Duplicity's scheme can also be vulnerable to minor corruption (e.g., due to disk error) anywhere since your last full backup taking out the entire backup, so if you're going to use it then you might like to investigate the options it provides for mitigating this risk as well.
Adding a support in for duplicati. Been running it in a docker container on my servers for a while and it's been pretty smooth sailing. Sending all backups to a gsuite business account.
Before any confusion arises, Duplicity and Duplicati despite their similar names and goals are two different projects that are not mutually compatible. The majority of my post is about the former, not the latter.
If my understanding is correct Duplicati started out as a C# rewrite of Duplicity (hence the name), but the projects have grown apart and are different things now. I don't think you can use Déja Dup with Duplicati, for example.
Duplicati is suprisingly easy to set up for Windows -> Linux. Installed the windows client, made an account on my linux box and pointed the windows client at it.
Is it a proper service on Windows? That's a problem. I want to configure it from an admin account and have it still work when non admin/non tech savvy users login.
The killer feature Duplicity has for consumer use is that it's probably the only (?) backup program on Linux that has an actual quality desktop GUI called Déja Dup [3] that's included by default in Ubuntu. It works somewhat similar to how Time Machine works on Macs. But if you need to backup headless systems the Duplicity command line interface works fine as well.
When it comes to backup features it's not the most powerful tool compared to some other solutions like Attic or Borg, but I think the GUI and out-of-the-box (encrypted) integration with cloud services make it one of the most user friendly solutions on Linux.
[1]: http://duplicity.nongnu.org/
[2]: https://www.backblaze.com/b2/cloud-storage.html
[3]: https://www.linux.com/learn/total-system-backup-and-recall-d...
[3b:] EDIT: Also Duplicati has a nice web GUI. Worth looking into as well.