## Linux distributions (distros)

Looking at Linux distributions and deciding for one can be a daunting task for newcomers. Here are some key differences between distributions:

### Release Model

The release model decides how frequently updates reach your system. Frequent smaller updates are called rolling release. If only very big updates are released, it is a point or major release model. Also, distros can either focus on well-tested and known software, while others focus on the bleeding edge.

### Basis and forks

This is where a lot of names are being dropped, e.g. Arch, Debian, RedHat. While it is not important to remember every name in the beginning, it is important to understand the concept. If a distribution derives from another distribution, it is called a fork (similar to the git concept). The basis of a distribution defines e.g. which system tools you have available and thereby also which software packages you can install in general. See the linux distribution timeline to make out which distro forked from where.

Example: Manjaro Linux is based on Arch Linux. Therefore, it is a fork of Arch. And while it has its own software repository, due to being derived from Arch it can also install software packages from the Arch User Repository. However, it is not related to Ubuntu, a fork of Debian. Refer to the distro timeline image to see how distros are related.

Related distros have similar tools and may install the same packages. So it is basically not possible to install Debian packages in Manjaro, since they are not related. Luckily there are almost always ways to work around such limitations in case you need a specific program.

### Design principles

Each distro has its own principles. Some try to be as beginner-friendly as possible (e.g. Ubuntu) and take a lot of choices from the user, while others encourage users to really learn the system (e.g. Arch). Pick a distro and read a little about it to find one that you believe suits your needs.

### User interface

This is might be the most surprising aspect about linux and it is a big difference to other operating systems. Looking at a distro, you see its Desktop Environment. In the Linux world, this is just like another package you can install or remove anytime. So if you find a distro that has everything you need, but does not look pleasing to you, there is a good chance you can install a different Desktop Environment and have the same system with different looks.

Summing it up, there are quite substantial differences between the linux distributions. Since it is impossible to understand every linux distro in the necessary detail to make an informed decision, think about what you really need and then just get started.

## Tools

Software should ideally be installed via the package manager that comes with your distro. Using package managers is more secure and faster than downloading the software from some website. So package managers should always be the starting point for installing software. Some examples for package managers are:

### Backup

Backups are essential. No matter if a system error was caused by an update or misconfiguration by the user, having a backup can save a lot of hassle.

• Software: Timeshift, Link to GitHub Project
• Functionality: Timeshift makes it easy to create and restore backups. By default it saves the system configuration, but it can also be configured to backup configuration and all your files. While Timeshift offers a graphical interface, you may also use it via bash. Frequent commands could be timeshift --check which will give you an overview about your existing backups as well as create one if needed. Using the --restore function, you can restore an earlier state of your PC. Knowing about restoring via bash is essential in case the GUI does not work anymore. Calling timeshift --help will get you an overview about all the functions you may call.

• Comment: Put the Timeshift backups on an external medium, e.g. a USB-drive. In case something goes horribly wrong, the backups won’t be affected. Also, having a “rescue system” ready can be helpful to restore these backups. A rescue system can be e.g. a USB-Drive or even a disk with a bootable linux distribution on it. Instructions how to create a bootable medium can be found on the website of most distros.

### Keyboard shortcuts

CTRL+ALT+F1 to F12 switch virtual consoles. This means that with e.g. CTRL+ALT+F3 you get no graphical user interface, but only bash. This can help in combination with bash restoring of backups if your system breaks.

### Resources

Cheat sheet for essential linux commands