Linux is a family of operating systems, or distros, based around the monolithic Linux kernel. These distributions contain the kernel, along with a selection of apps, and a package manager.
The Linux kernel, and most Linux distros are free and open source software. This means that you’re free to use them however you want, can study and change the OS, and sell or give away your own original or modified copies.
Away from the desktop, Linux provides the basic platform for servers, Android mobile phones, and IoT devices.
Choosing a Distro
A Linux distro consists of the Linux kernel, one or more package managers, and a carefully curated selection of software. Some distros, such as Ubuntu, are geared towards beginners and come with an intuitive, easy-to-use desktop environment, sensible software to suit most users, and a simple installer.
While many distros are general purpose, others are built with a specific use case in mind. When choosing a distro you need to consider what you plan to use the distro for, along with your own level of knowledge, and whether you’re willing to learn the nuts and bolts of your system.
You should also check how often the distro is updated, any security issues, and how well the project is maintained.
Installing Your Distro
After you’ve chosen your distro, you need to install it on your PC. Distros usually come as ISO files, and can be written to either a USB drive , or if you’re stuck in 1998, to optical media such as a CD or DVD.
After you’ve download the ISO file, you will write it to your USB drive using either Rufus or UNetbootin. Reboot your PC, and choose your USB drive as the boot device, then follow the prompts to install Linux.
If you’re not 100% sure that you’ve chosen the right distro, or you want to try it out first, you can install Linux in a virtual machine on your Windows or macOS desktop.
Most distros will also give you the option of booting into a “Live” environment before installing. This gives you a fully functional Linux desktop with access to most of the tools, apps, and utilities which will be available on an installed system. Have a play around and make sure that you’re comfortable before committing.
Getting Familiar with the Desktop Environment
The Desktop Environment is what you see on your screen after you turn on your Linux PC, but before you open any apps. Usually, there’ll be a system menu, a wallpaper, and some desktop icons.
Beyond that, desktop environments can vary wildly. Some desktop environments, such as Pantheon and Xfce4 are designed, or can be configured to resemble Windows or macOS desktops – to help ease new Linux users into the distro.
Others such as Ubuntu’s Unity were created with ease of use in mind, or for a particular style of interaction. If you have older or more limited hardware, lightweight desktop environments including LXDE are a good idea. Different desktop environments can take a while to get used to, but you’ll soon find yourself at home.
Window managers such as i3 and bspwm, aren’t classed as full desktop environments, and are keyboard driven, productivity focused, and automatically tile windows on the screen without overlapping them.
Learning the Command Line
While most modern distros make it easy to use Linux without ever having to type into a terminal, the Linux command line is a powerful tool, and using the command line is often easier and quicker than using a GUI (Graphical User Interface) app.
With the command line, you have complete control over your Linux system, and can efficiently navigate, create, edit, and carry out tasks.
Commands are usually a single string followed by arguments indicating what the command is to be applied to and how it should be carried out.
If you get stuck, you can preface the command with man to bring up the manual entry for a particular command, or append -help or –help to get assistance.
Some useful commands beginners should know include ls to list the contents of a directory, pwd to show your current working directory, cd to change directory, and cat to display the contents of a file as standard output.
Get to know the Linux File System!
The Linux filesystem is a tree-like structure, where all files, directories, and devices branch off from the root – denoted by a forward slash “/“.
Everything in Linux is treated as a file and can be accessed through the filesystem tree. Physical devices such as removable storage, for example, are found in /media. Files representing devices attached to your local system are located in /dev/.
If you want to take a look at the files depicting your CPU, you could enter:
…into your terminal.
All user files and directories including downloads, documents, and pictures, are in /home/, and app binaries are in the intuitively named /bin/ directory.
Other filesystem locations you should know about include /lib/, which contains shared library files used by binaries; /etc/ which is home to configuration files; and /proc/ – a virtual filesystem for your system’s running processes.
Installing Software and Managing Packages
Installing and managing software is easy on Linux. Instead of downloading .exe files from random locations around the internet, most of the time your system’s package manager will do the hard work for you.
Linux software is usually found in vast online repositories, and regardless what distro you use, your package manager can fetch the software you want, and install it together with its dependencies.
Using a package manager also means that you can update all of the software on your system with a single command – hugely reducing the risk of a security breach due to unpatched apps.
Linux has three main package management systems. Debian and its derivatives, including Ubuntu, use the Advanced Package Tool (APT), and Red Hat-based systems use the Yellowdog Updater, Modified (YUM) or its successor, Dandified YUM (DNF). The Arch distro family uses Pacman.
If you’re nervous about installing apps via the command line, most mainstream distros offer a graphical front-end, such as Synaptatic, to their package management tools.
Customizing Your Linux Setup
One of the best things about Linux is that there are no restrictions on how you use or alter it. This means you can customize your setup to your heart’s content.
You will have done some basic customization during the initial Linux install process – setting keyboard layout, location, and time. Once your system is installed you can change just about everything about your distro to make it easier and more intuitive to use, and gorgeous to look at.
In addition to basic theming modifications such as wallpaper, display resolution, and theming, you can completely replace the desktop environment, install and use a different terminal emulator, set custom keybindings, and configure Conky to display information directly on your desktop.
As you become more proficient in the terminal, you can write Bash scripts to automate certain tasks, and use the cron utility to trigger them at certain times!
Staying Safe and Secure
Linux is often viewed as being more secure than its proprietary counterparts. This is largely because its code is open source and open to inspection, meaning bugs are quickly spotted. Linux also boasts a strict account control system which stops apps and users from doing anything they’re not supposed to.
Despite this, Linux systems do come under attack, and software bugs can be exploited by criminals. To prevent this, you should make sure that your system is always kept up-to-date. Using a firewall such as UFW (Uncomplicated Firewall) can help prevent malware or hackers from gaining access to your system.
Finding Resources and Help
The Linux ecosystem is huge, and the people who use it tend to be knowledgable and helpful. If you run into a problem, your first stop should be the documentation of the tool you’re trying to use. If that fails, then it’s time to go online.
It’s almost guaranteed that any problem you encounter has been previously experienced by others.
Check resources such as the arch wiki , stackoverflow.com for any highly technical question, or if your problem is distro specific, then search the relevant subreddit for similar issues.
Most distros will also have a dedicated forum, where users can ask and answer questions. If you’re sure that questions relating to your issue haven’t already been answered, the forums are a great place to ask.
Adjusting to Linux
Adjusting to Linux after a lifetime on Windows can be challenging. It’s a shock to go from a system which holds your hand and keeps its internal workings secret to one where everything is open, and you have permission to do anything you want.
It’s also disconcerting to adjust to a new user interface, and way of doing things. But Linux doesn’t have to be difficult, and you won’t be forced to do complicated PC surgery to get it working.
Modern distros are user friendly, and will simply get out of your way and let you get on with being productive.
Almost all software which runs on Windows or macOS is available on Linux – either as a native port or through easy-to-use tools such as WINE and PlayOnLinux.
Stick with Linux, and you’ll soon forget that you ever used anything else!