But really, you may not need S3 at all and just sync between your devices with Syncthing: https://syncthing.net/
Shameless plug: Syncthing is in official Debian repositories! https://tracker.debian.org/pkg/syncthing
Not feasible to use this for critical infrastructure if there is no maintenance happening.
- https://github.com/syncthing/syncthing/releases/tag/v0.14.7
Also, It will improve further with File System Notifications (from what I understand?):
By default, Syncthing is pre-configured with community-hosted discovery servers:
- https://github.com/syncthing/syncthing/blob/master/lib/confi...
The community also hosts relay servers, so if your two devices can't communicate with eachother directly, it will work anyway.
Relay servers take bandwidth. Anyone can run a relay server, and it will automatically join the relay pool and be available to Syncthing users. This is documented here:
- https://docs.syncthing.net/users/strelaysrv.html#strelaysrv
It would also be possible to host your own private relay and discovery pools, if you need that for some reason.
If you want to use an open source tool you can use borg backup & rsync.net as your external backup site. Borg doesn't have good S3 integration, and using fuse & s3 doesn't work that well either. It works best when the borg daemon is on the reciever box too to help with indexing and such.
There's a big item on one of my whiteboards: "put gmvault into the environment" ... the idea being that you could run 'gmvault', over SSH, on rsync.net:
ssh user@rsync.net gmvault ... blah blah ...
I've been meaning to do this forever ... it would be great if rsync.net customers could not install anything, but just run gmvault as an ssh command.
The only reason it takes time is that we do not have a python interpreter in our environment - we try to keep things as simple and locked down as possible - which means we have to "freeze" gmvault as a binary executable in order to put it into place ...
So ... folks want this ?