If you want backups done right, use BorgBackup. You can use Vorta as a GUI for Borg.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
I didn't know it had a GUI, very nice.
rsync is ubiquitous and the standard for this type of job.
rsync -rav --delete --progress --exclude=ignore_dir source-dir user@host:remote_dir
SSH is used to connect. Ownership, symlinks, etc. are preserved. Add more "excludes" to filter out more directories. Do your first run without " delete" to make sure things are going where you want.
If you want "backups" I would suggest something more sophisticated. But for just cloning this is the way.
I use syncthing to mirror to a raspberry pi NAS. Set it and forget it
I actually didnt say local. Use syncthing already, its just great. Two phones and two laptops, no problems really.
But this is for local backups
I dont want weird archives or anything, just to copy my filesystem to another drive.
For proper backups, you do want "weird archives" with integrity checks, versioning, deduplication and compression. Regular files cannot offer that (at least not efficiently so).
Ok thanks. Fedora already uses BTRFS, would that work?
Even with btrfs "weird archives" such as Borg's or restic's are preferred for backups.
I currently use restic, but borg backup or just rsync would do well for what you need.
Just setup an rsync script. I use that KDE backup tool instead. It's just a gui to setup auto rsync backups.
Kup, right? It has a systemsettings page?
The question is not which tool should I use?
The question is what is it that you want to achieve? That will drive your choice of tools.
I want to mirror my drive can be achieved by a lot of tools. But I want to be able to restore a file I accidentally deleted up to 24 hours with a 1 hour interval is a totally different game.
For backups I am very fond of restic as it does a lot of things in a simple way: encryption, (incremental) snapshots, mounting of said snapshots, support various storage backends, policy based purging, tagging, …
Your tool may not be able to do all you need, like automated scheduled backups, so you will need to also learn cron (or whatever scheduler you may have)
And finally, what about maintenance? What should happen to all those files you’ve synced? How long do you want to keep them?
Lots of great suggestions here.
What about straight up disk cloning? Like, with dd to a dedicated backup drive?
So many options. As others have mentioned, rsync, borg, restic, etc. You might want to look into filesystem snapshots. If you use something like BTRFS you can create instant snapshots and send them to a second BTRFS formatted disk or even a remote system with a BTRFS filesystem.
ZFS would also work here.
I use btrbk for automatic BTRFS snapshots and backing them up to remote systems.
If you want built-in encryption you can use Borg or Restic, which also has the advantage of deduplicating within a single backup set. Restic can also backup to an s3 bucket, in case you want to use a cloud service.
Thanks! I have a local drive, does btrbk work there too?
I am on Fedora so BTRFS ftw
Yes of course. On the btrbk homepage they even describe how to set it up so that a backup gets triggered automatically when you plug in a designated backup drive.
My setup is to create local snapshots and keep X amount of local snapshots. Copy snapshots to a remote server and keep a different amount of snapshots there. Finally I also have a backup drive and btrbk is setup to copy all my local snapshots to that backup drive when it's plugged in.