I’ve noticed that in Fedora, as in many Linux distributions, the data backup aspect is often overlooked. When a user installs Fedora for the first time, on the first boot they are greeted by the welcome software, which guides them through enabling third-party repositories and so on.
Maybe among these guided screens we could add a message like “Make a backup of your data using software X or Y.”
Linux offers many excellent backup tools: Pika, DejaDup, Vorta, etc.
Guiding users toward data backup and providing an automated system for system restore points would make Fedora one of the most robust distributions when it comes to data recovery or OS recovery.
I think to be successful you need a way for the desktops to be able to nag the user about not backing up. It’s too easy to ignore the welcome messages.
That nagging needs an API that backup software can hook into to notifiy the backup nagger that a backup has been completed.
And an off switch.
Then you need a consensus on which backup tools to use for each use case.
Backup to USB disk
Backup to NAS
Backup to Cloud
Backup to …
Config of backup can be complex, new users will need a lot of help to get config and testing of backup right.
I agree that it’s difficult to cover every use case and that backup configuration may seem complicated for some users.
It’s true that many users ignore welcome messages and keep clicking “Next” to speed things up, but in this case it’s the user who chooses to ignore a recommendation. Our job is simply to offer it or document it, so that more attentive users can be informed.
Initially, I think a message like:
“Protect your content by regularly backing up the data in your Home directory. This is where your important documents, precious photos, and all your user configurations reside.”
And a selection of backup software, similar to the banner we already show on the software selection page:
I believe the tools already exist to do backup/restores well! But every user’s set-up and backup hardware varies: No one tool works well for everyone (eg: I wouldn’t consider those 3 tools)
Like a game: I back-up the 80GB .dat file because it’s huge, but download the setup and reconfigure it on fresh OS installs each time (about 2 mins), vs backing up the entire game + config and re-hooking it up (10+ minutes). Backing up less can be more But knowing what to back-up is personal to each user.
Plus, relying on a large tool for backups/restore is a hard-lock: What if you want to try out another OS that doesn’t support the restore tool? What if it fails half-way through the restore? Is it advanced-enough to know how to recover the restore, or will it check all existing files slowly? Does it checksum the last file that failed, or leave it partial just because it exists? Stuff like that is easy cross-os with rsync flags, and that’s tried-and-true and exists Fedora, every mainstream Linux, BSDs, even Windows.
I’m not sure what tool Fedora could propose as a backup tool, but recall Ubuntu mentioned DejaDup years ago (I’m thinking they might have stopped for a reason?). rsync works fine today!
I guess we are speaking of a basic backup configuration here, then people with more complex needs would need to look for different solutions.
I would associate a cloud account with the user account upon Fedora installation and configure Deja Dup to backup the /documents directory. Then the user can add other directories to this basic configuration (Fedora Gnome does not include a mail client that I am aware of, otherwise mail could be included).
Here are two areas of backup: The system state, the user data.
Regarding the system state, making systems more identical and reproducible reduces this requirement.
Further, Atomic immutable systems further reduce the requirement for backup, while providing sufficient simple rollback techniques.
Other procedures and safeguards (I am not listing them for brevity) exist, so the responsibility of system backup is to the user non-existent.
When the remaining few kinks are ironed out, just using them “by default” solves everything.
As for the “traditional” distros, the only solution I am aware of is GRUB-Btrfs+snapper, for manual tarballs (Taking space too much). Kindly let me know more if they exist.
++++++
As for the user data,
This is important to be noted.
Very important, often overlooked in theoretical discussions.
The most important part of the backup is recovery, not backup itself.
Yes, but how will it be used? For a newcomer from Windows/MacOS who knows nothing about the CLI?
For windows, MacOS has RsyncUI, linux has GRsync, but how well can you expect their availability and the features they support?
And that people would use the same in other OSes? Would they understand the concept of rsync?
We need a “proper” app like Time Machine or System Restore (but more polished and actually working).
AND it doesn’t support cloud… You need rclone for an experience closest to rsync, but it doesn’t have a usable GUI. It provides a built-in web-page GUI meant for the most experienced professionals only, other rudimentary tools exist which don’t provide even necessary features (Celeste in flathub for example), and the CLI itself requires you to register yourself as a developer and get an API key for most of the common cloud systems.
filen cloud provides a good GUI, but you can’t expect all to use a "preferred” choice.
=====
What we need is rsync, rclone, maybe even tar and zstd, for backends, but a good frontend plz…
Mainly, we need a way to somehow locally backup a few copies, for accidental mistakes or deletions.
Btrfs r/o snapshots work excellent for this case (esp. with systemd-homed), but how will a newcomer use it? For backup AND recovery? Where’s the intuitive GUI?
Any other solutions?
+++++
TL;DR we don’t have a usable GUI for backups, and the recovery isn’t straightforward.
Deja Dup might be a good one though, any more programs? “Cross-platform” might not be easy though…