A doubt with Timeshift and backups use

When you visit the Timeshift’s website you can read:

“It is designed to protect only system files and settings. User files such as documents, pictures and music are excluded. This ensures that your files remains unchanged when you restore your system to an earlier date.”

Furthermore, the developer has released baqpaq, which is designed to protect personal data and user files. However, I always include my files in my Timeshift backups:

Maybe I’m doing wrong, but two times Timeshift has saved me from the disaster.

So, I wonder why the developer says that and owns two separate apps when I do the same with only one… :thinking:

The developer is correct… although you can include the users home directory, it is not recommended.

User file backups have different requirements than system backups. A system backup will always restore every file every time back to it’s original location, no exceptions.

Including user home directories in that scenario is inadequate, a user may want to restore only certain files or folders and from different time stamps. A system backup may be set for longer intervals, say every other day, every week etc. But a user backup may need to be done every day, or even every hour, it is a bit of “a broken clock is right twice per day”, yes you can back up your home directory in Timeshift, but that is not the best way.

Personally, I recommend and use Timeshift for system backups and BackInTime for User directories. Ultimately, it’s what works for you.

At the same time, I don’t recommend BackInTime for system backups :slight_smile:

1 Like

Why to not add user folder with Timeshift? because when you restore your backup it puts your user folder to the state it was when doing the backup, so you could have modified personal files erased by the ‘restore’ function. Also, some programs like Steam or Lutris use the home folder, and you definitely do not want to backup your game files this would be ridiculous…

1 Like

I run timeshift for system protection and backintime for user protection. timeshift is configured to backup before every system update (once a week on the testing branch) whereas backintime is configured for hourly snapshots.

If I’m ever required to restore my system, with timeshift alone I would lose all my work since the last update. However, with backintime I would lose at most an hour.

Another consideration is the time required for restore/backup.

@acutbal , if you have a closer look you might realize that the settings only include

/home/$USER/.*

which means all hidden sub-folders of your /home/$USER folder, i.e. no data directly in /home/$USER and no data from non-hidden folders! The little “.” makes the difference. :wink:

2 Likes

Nice catch

That’s right, but some hidden folder still contain huge data, like Steam, or Lutris (even if Lutris main folder is not hidden, it stores a LOT of things in hidden folders).

Timeshift is not ideal at all for backing up the Home folder without a more extensive configuration, where you make sure you exclude and include specific folders.

Here is current Timeshift config tab where you can see it changed from the screenshot. Not even sure you can still configure the way it is in the screenshot.

@Wollie Sorry, my bad, you are right… That screenshot was taken from my laptop where I have Timeshift configured as intended. This is how I have it on my main PC:

If I need a restore is because an update has broken my system, so for me it’s a tranquility that I can roll back to the previous exactly state. I know that despite a crash, my files still are there, but in the past, after trying to fix a bad update I’ve ended to doing a full wipe and a clean installation and losing my files. I set Timeshift to do backups daily, this way with only one tool my system and my files are safe.

But then when you restore a backup your files rollback in your Home directory too, some can be erased, and so on. Hence why it is preferable to use a proper tool to backup the Home folder if needed.

In addition to the preselection whether Timeshift should back up /user and /root, a restore option including/exclusive /root and /user would have made sense. This would make Timeshift much more flexible in its backup strategy. Is probably not wanted … :wink:

I do daily backups, so if I have to restore the whole system after a bad update my loses are marginally.
:grinning:

Fortunately, my system only has crashed after a bad update two times…

OK but to answer your initial question, we gave you plenty reasons as to why you should not use TimeShift for backup in your Home. Now you do as you want but for all these reason, it is a bad idea, and using another tool is the proper way. Personally I don’t backup my Home at all. If the system crashes I have a live USB to restore the system or access the files to copy them. If the disk fails, I do my backups on the same disk anyway so there is no point.

1 Like

Then, what backup software for user files is best?

I previously set Timeshift for only hidden files, and back-in-time for other files; however, I found Timeshift alone less intrusive so I go with that now. With a daily schedule it isn’t a problem - and when I’m working, I use my second SSD as a working directory so any current projects won’t be affected.

The biggest issue I have is that any TV I watched since the last backup will again be marked as unwatched. It sometimes causes minor issues with seeding torrents (any recent downloads could be disconnected and I might forget to get them back seeding until I see a hit 'n run warning).

Having said that, my Documents/pictures/media files are all on /mnt locations and unaffected.

As a newbie, while I do understand that it is better to exclude personal documents from a system backup, I do not get why one should exclude hidden files in the /home from the system backup (besides obvious mozilla caches etc). Those files are mostly user specific configuration files for applications which, to me, belong to a system backup.

Suppose you completely exclude /home from a system backup performed weekly (e.g on sundays using Timeshift) and make a separate /home backup daily (i.e using BackInTime), as @omano may recommend. Now suppose you install a new app on monday (which is going to create its configuration file in /home). On tuesday, you run a system update which breaks your system so you decide to reinstall everything. The last available system backup will not include the app installed on monday but the /home backup will include its configuration file… Granted this would likely not cause any issue here but it still looks inconsistent to me. So why not include hidden configuration files in /home as part of a system backup as @acutbal did?

Because you can’t select specific folders and it is all-in (all files or all hidden files) or nothing. And because of all the other reasons explained, we could repeat again but at this point… hidden files not only some small config files… blabla… I have 340Giga of hidden folders in my home.

1 Like

sorry but with most backup tools (Borg, Rsync etc) you CAN select what you want to backup, so you don’t need to backup all hidden files. With Timeshift you can also define specific filters to achieve the same thing. For example, I include most of my hidden files in my \home as part of my system backup but I exclude the following:

--exclude '/home/*/.cache' 					\
--exclude '/home/*/.thumbnails' 				\
--exclude '/home/*/.mozilla/firefox/*/storage' 			\
--exclude '/home/*/.mozilla/firefox/*/cache' 			\
--exclude '/home/*/.local/share/Trash' 				\
--exclude '/home/lost+found' 					\

Obviously /home/Documents etc are also excluded from the system backup and are backed up separately. No issue with backup size so far…

Nobody has said you cannot use backintime to backup files in your /home folder, it’s just NOT recommended and not what backintime was designed to do. Your system files hardly ever change, whereas those in your /home change very frequently.

Why wouldn’t you want to backup e.g. /home/.config as part of a system backup? These contain configuration settings for your apps. If you backup these separately from the system, don’t you run the risk to have configuration files that are not in sync with the application version that has been restored from system backup?

It’s very rare for /home configs to be out of sync with the software, the only real example I can think of is firefox which refuses to load newer profiles. But, that’s all part and parcel of maintaining a Linux system. System files are used mostly by the root user, /home is for non admin users. IMO they should be separated as much as possible.

Besides, as already mentioned several times above, a system backup on my machine runs about once a week (once a month on stable the branch). My /home folder backs up once an hour. If I restore a system backup from last month, I would lose ALL newly created files from my /home folder.

An extra point to consider is when there is more than one user on the system. Individual users shouldn’t have to lose their files just because another user caused the system to become unusable.

2 Likes