No Linux distribution is 100 percent perfect and because of that, many people keep checking out the greener grass on the other side by visiting distrowatch.org. In a few days, I too will have to make a big decision. So I stay with OpenSUSE Tumbleweed on my laptop or should I install Ubuntu as I did on my other computers. In a way, I’d love to use the same operating system on my Linux machines so I will probably go for it.
I have installed all kinds of Linux distributions over the last 20 years and sometimes regretted to not have planed a bit better. Although my backup method makes reinstalling a new operating system pretty much fool safe, I still want to develop a best practice strategy in the form or a distrohopper checklist.
No need to back up work files
Hopefully you do not store work files on your computers hard drive that also holds the operating system. I’ve stopped doing that a long time ago and thanks to Rsync, everything is done automatically. Still, there are some important files which are not considered work files and therefore, they must get entered on my distrohopper checklist and backed up.
By default, Linux hides a lot of directories in the browser. To see all the files in our home directory, we can open it with a file browser such as Thunar (if you use XFCE) and press Ctrl + h to reveal everything. To hide all the dot-files (hidden files), all we need to do is press that same shortcut Ctrl + h one more and everything will look organized as we like it. Let’s look a bit closer.
If you use SSH keys then backing up the hidden .ssh directory a must.
- Saved logins
Depending on your password strategy, you might have saved logins stored in your web browsers preference. Recent versions of Firefox can export those as a logins.csv file which makes importing everything fast and easy.
Some logins which are especially important are your router, web sites and email accounts.
- Browser bookmarks
If you bookmark the pages which offer value to your online existence then you surely want to bring the bookmarks with you. If Firefox is your main web browser then take advantage of the handy bookmarks export option which saves out a .jason file that can be imported upon reinstalling. Usually, if it’s not bookmarked then finding that site again is like playing the lottery.
- New work
I run Rsync before I shut down for the day but if I created an asset after that, it would not get backed up until Rsync does its magic again which would be one day later. If you are just about to reinstall Linux then make sure to check your home directory for new files which might have been created since the last backup.
- .themes and .icons
If you install custom themes and icons that you most likely have those two hidden folders in your home directory. I highly recommend backing those up even if you switch to a completely different Linux distribution with a new display manager. You never know if you stay with it and if not, then you mist likely will revert to your previous distribution. Having the themes and icons is a big time saver.
If your computer is used for email and you use Thunderbird then you must back up the hidden .thunderbird directory. Even if you don’t distrohop, backing up this directory is a must and should be done one a bi-monthly basis. Warning! If you have a lot of email accounts, this directory can be many gigabytes in size and takes a long time to transfer.
Make sure that you check and compare the file size after the backup has finished or you won’t be able to use the data.
I will add more items to the list as I happen to discover what else must be included.
Delete sensitive files
A bit earlier, I’ve mentioned to back up (export) your web browser’s saved logins and passwords. After you import the data in your new setup, you have two choices. Delete the file or encrypt it for safe keeping. If you delete, then please use shred to do so. The full command (terminal) is:
If you named it something else, then use the correct file name. After shredding, the file is unreadable so make sure that everything works before you do.
If you decide to keep it for future use then I highly recommend that you encrypt it. To do so, right-click the file and chose “create archive” from the pop-up window. Change the compression format to 7z (seven zip) and use a strong password. If you don’t see this option, install 7z-full with the help of the package manager.
Check the file at least once to make sure that the password you entered is correct and then shred the source file (logins.csv) because you no longer need it.
IF you safe files to the desktop, then grab everything and drag it into a new directory. Name that directory accordingly and move it to an external hard drive or USB stick.
Having and using a distrohopper checklist can safe you a lot of time and frustration. It’s a good idea to have a dList.txt file on your desktop and every time you install software or save something valuable, put a hint on the list. This way, you can consult your notes before you install a new Linux distribution without losing important files or data.
Such a list comes in especially handy if you install custom plugins with the software you use. Usually, plugins have tweaks which, if not documented, will be lost upon reinstalling.
If Timeshift is available for your Linux distribution then use it. Timeshift provides reliable system backups. It is not recommended to also back up the home directory because that would take a lot of space. Still, having a system backup is priceless. Every time you update or install something, the system could experience boot issues of the new driver might not work as expected. Timeshift fixes all of that in just seconds. I have used it a lot in the past few years and if an OS is installed on EXT4 then Timeshift is the tool of choice. Timeshift is a fantastic piece of software and the perfect backup solution to use with Rsync.
Rsync stands for remote synchronization and does just that. It checks what is new and if it finds files that are newer then those from the previous backup it will overwrite the old files.
If you have questions then leave a comment and I will provide more info. Note that “shred” is already installed so all you have to do is use this handy command line utility to destroy file(s) before you delete them. Thank you for reading.