[Borgbackup] What don't you like about Borg?

tmhikaru at gmail.com tmhikaru at gmail.com
Fri Oct 21 00:49:18 EDT 2016


The lack of centralized management of borg was a big problem for me as well,
though I tried working around it in two different ways - the first was to
have the server that ran the backup script to login to the remote client as
root with an ssh key and run borg to connect back to the server.  While this
allowed me to centrally script the backup of all machines remotely, it still
relied on the remote clients cpu and memory to do the majority of work and
required the client machine have borg.  Of my machines, my server is many
times stronger than the clients it is backing up, and this is unfortunately
exactly backwards from the way borg seems to be intended to be used.

The other way I attempted to work around it was to use sshfs mounts on the
server to access all of the filesystems on the remote machines.  This worked
nearly perfectly, except that I had to manually blacklist mountpoints on the
remote machines such as /proc/.  One major disadvantage with this is
unfortunately sshfs did not and may still not support xattrs, so for
instance this method cannot be used to backup an selinux system properly. 
This had the huge advantage of being able to use the cpu&ram of the server
that stored the backup to manage compressing the data that was being read
from the client side, and also didn't require the client to have borg
installed - both of the machines I used had no distro support for borg, and
one of them didn't even have python 3.  Although sshfs adds a bit of
overhead, the result was a 2-3x faster backup of the same data from one
machine, and another that was having trouble running the borg client at all
was able to use this method to back up its data flawlessly.  Yet another
plus in its favor is it did not require the client to be able to login to
the server's storage, and only required that the client have a keyed ssh
login as root, which allowed the server to mount its root by sshfs.

Unfortunately although the second attempt I came up with worked MUCH better,
the showstopper for me was when I realized that it was likely simply
impossible for the machine that was having trouble running the client at all
to be able to restore files from a backup that had been made to the server. 
Even though I was able to do the backups using sshfs on the server to get
past the problem of the borg client hanging forever, this would not help in
the case where I'd want to connect the backup drive directly to the weak
machine and restore files.  Its hardware is simply incapable of running
borg reliably.

And that's the other elephant in the room - borg requires too much memory
and cpu on the client end compared to the other backup solutions I have
used.

In the past I used rsync to do incremental backups of my multiple machines. 
Since my time with borg, I've returned to rsync.  I really liked the
deduplicating feature of borg as it saved quite a lot of space with the
multiple machines sharing the single repository.  Given this experience, I
investigated and have since been using a hardlink program that handles
things rsync does not in incremental backups, such as file renames, and also
finds duplicates across backups from separate machines.  Rsync is an
imperfect solution, and for an example does not support system level selinux
xattrs on purpose as well as having fairly annoying bugs with xattrs crop up
from time to time, but aside from that it does work across all of my
machines and is supported in each distro.  Compared to borg, rsync requires
nearly no cpu and memory, and can be used from a central server to
orchestrate backups with just a ssh key login to the remote client. 
Restoring files from an rsynced backup is often literally as simple as
mounting the backup drive and running cp -a...

All in all, I simply do not meet the requirements of using borg and gave up
trying to find a way.

Tim McGrath

On Thu, Oct 20, 2016 at 12:40:00PM +0200, Peter Schiffer wrote:
> I'm currently moving from borg to burp because I'm missing centralized
> management - managing clients from server (what to backup, when, etc). Burp
> enables this and with burp-ui it's possible to manage multiple burp servers
> and all of their clients from single web ui:
> https://git.ziirish.me/ziirish/burp-ui
> 
> In borg I also miss native support of various remote locations, like S3,
> samba, ftp..
> 
> And desktop GUI as well. Even simple deja dup is just fine for regular
> users..
> 
> peter
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 465 bytes
Desc: Digital signature
URL: <http://mail.python.org/pipermail/borgbackup/attachments/20161020/c5b69da4/attachment.sig>


More information about the Borgbackup mailing list