0%

0/1 Lessons

Introduction to Linux Server Operating Systems

• 30min

0 / 3 lessons complete

Linux Server Installation and Lab Setup

• 23min

0 / 6 lessons complete

Working with the Linux Command Line Interface

• 1hr 30min

0 / 12 lessons complete

User and Group Management

• 44min

0 / 7 lessons complete

Linux Storage

• 30min

0 / 6 lessons complete

Linux Administration Basics

• 53min

0 / 8 lessons complete

Linux Networking

• 47min

0 / 8 lessons complete

Course Conclusion

• 5min

0 / 1 lessons complete

Instructions

Q&A (0)

Notes (0)

Resources (0)

Saving Progress...

Resources

There are no resources for this lesson.

Notes can be saved and accessed anywhere in the course. They also double as bookmarks so you can quickly review important lesson material.

Create note

Imagine Linux as a powerful engine that runs a computer, but on its own, it's just a bare-bones skeleton. That's where Linux distributions come in. They take that raw power of the Linux kernel and dress it up with a complete operating system.

As this course primarily targets server infrastructure, our main concentration will be on server-based distros, excluding client distros like Ubuntu Desktop.

A Linux distribution, also known as a distro, is like a full package deal. It includes the Linux kernel, which is the brain behind the scenes that talks to the hardware and manages system resources. But that's not all! It also bundles together a whole bunch of software components like libraries, utilities, applications, and sometimes a graphical user interface (GUI) to make your life easier.

Think of it as a customized flavor of Linux. Each distribution has its own personality, preferences, and goals. It's like a different recipe cooked up by different chefs.

Below is a list of popular Linux distros. The "best" Linux distribution topic is a hotly debated one and not one we are making an argument for.

Choosing the right Linux distribution for your specific needs is a complex decision. It depends on various factors, such as your (or your team's) prior Linux experience or simply personal preference. To help you make an informed choice, consider the following key factors that differentiate Linux distributions:

  1. Package Management System
  2. Software Repository
  3. Default Desktop Environment
  4. Release Model

Let's look into each of these in more detail.

Package Management System

Each distribution has its own package management system, which handles software packages' installation, removal, and updates. Examples include APT (used by Debian and Ubuntu), DNF (used by Fedora), Pacman (used by Arch Linux), and Zypper (used by openSUSE). The package management system ensures smooth software management and dependency resolution.

But what does this mean? It means that besides using a different package manager on the backend, you will also use different commands to install and update software. In the table below, there are examples of how to install the nginx package using different package managers:

Package ManagerUpdate CommandInstall Command
APT (Debian/Ubuntu)sudo apt updatesudo apt install nginx
DNF (Fedora)sudo dnf updatesudo dnf install nginx
Pacman (Arch Linux)sudo pacman -Syusudo pacman -S nginx
Zypper (openSUSE)sudo zypper refreshsudo zypper install nginx
YUM (CentOS)sudo yum updatesudo yum install nginx
Examples of Installing NGINX with different Package Managers

Software Repository

Linux distributions typically have software repositories, which are collections of pre-compiled software packages that users can easily install. These repositories contain a vast array of applications, libraries, and utilities, making it convenient for users to access and install software.

Using the official software repository provided by the Linux distribution itself is preferred due to trust, reliability, security, compatibility, and official support. Official repositories undergo testing, have secure packages, and are well-maintained for the specific distribution.

You can also add third-party repositories to Linux Distros. While these repositories may offer more software options, but they can be less reliable, have compatibility issues, and lack official support. It's important to balance the benefits and risks when considering third-party repositories.

Various Linux distributions have different ways to add third-party repositories. The table below gives you a rough idea of the different ways to get this done:

DistributionPackage ManagerCommand to Add RepositoryCommand to Update Package Lists
Debian/UbuntuAPTModify /etc/apt/sources.list or create files in /etc/apt/sources.list.d/ directorysudo apt update
FedoraDNFsudo dnf config-manager --add-repo <repository_url>sudo dnf update
Arch LinuxPacmanModify /etc/pacman.confsudo pacman -Sy
openSUSEZyppersudo zypper addrepo -f <repository_url> <repository_name>sudo zypper refresh
CentOSYUM/DNFCreate .repo file in /etc/yum.repos.d/ directorysudo yum update or sudo dnf update (depending on version)

Default Desktop Environment

It is common for Linux server distros (like the ones you'll likely work on as a DevOps professional) not to include a desktop environment. These would rely solely on the Linux terminal, which means you need to be familiar with and comfortable executing common Linux administration tasks with the command line. This is most likely the type of Linux operating system you'll be interacting with if you're working in the DevOps field. The lack of a desktop environment has benefits such as improved performance and reduced storage usage.

You should expect to interact with desktop environments when you're working with client Linux distros like Ubuntu Desktop. It's common to use a Linux-based OS with a desktop environment when Linux is installed on a desktop, laptop, or local VM, for example.

A desktop environment provides a graphical interface and tools for users to interact with the operating system and is common for client operating systems you would load on your laptop or workstation. Different distributions offer various desktop environments, such as GNOME, KDE, Xfce, Cinnamon, or MATE. The choice of the default desktop environment can significantly impact the look, feel, and user experience of a distribution.

Release Model

Linux distributions follow different release models. Some distributions have fixed release cycles, where new versions are released at regular intervals with specific feature sets and updates. Others adopt a rolling release model, which offers continuous updates without distinct version releases, providing users with the latest software and features as they become available.

Release cycles vary too much between distros to discuss here, and I don't want to bore you to death with their details... Instead, when you choose to use a Linux distro, I highly encourage you to become familiar with their specific release cycle so you can keep your servers up-to-date and secure.

Here are some links to checkout the release cycles for the distros we've talked about so far:

That's it for this lesson! See you in the next one.

0 0 votes
Lesson Rating
Subscribe
Notify of
profile avatar
0 Comments
Inline Feedbacks
View all comments