Setting the Stage for Linux
The free software movement began in 1983 when Richard Stallman launched the GNU Project. GNU, by the way, is a recursive acronym that stands for “GNU’s Not Unix!” His goal was to create a totally free and open source GNU operating system compatible with Unix. He and other software developers started on this project by recreating the most popular Unix commands. By 1990 all the major components of the operating system had been written with one big exception: the kernel.
In 1991 a Finish student named Linus Torvalds created the Linux kernel. Linus first started working on a terminal emulator to connect to Unix systems at his university but over time that project grew into something bigger and eventually became the Linux kernel. Combining the Linux kernel with the GNU Foundation’s command line tools created a complete Unix-like operating system. Shortly after the release of the Linux kernel collections of various software combined with the Linux kernel started to appear. These sets of software became known as Linux distributions.
Today the Linux operating system is supported on most hardware platforms. Linux works on almost every architecture from i386 to SPARC. Linux can be found on almost every type of device today, from watches, televisions, mobile phones, servers, desktops, and even vending machines.
The Power of Package Management
One of the things that sets Linux apart from other operating systems is the way software is installed and managed. Traditionally when you wanted to install software on the Windows operating system you would find the software, download the software, and install the software. These are steps that the end user has to perform one-by-one. Imaging browsing the web for an application, downloading that application to your “Downloads” folder, double clicking on the download to start the installation process and then answering a series of questions to finally install the software.
To install software on a Linux system you use the package manager that comes with the distribution. To install a new piece of software you search for it and install it from the operating system itself. The package manager takes care of downloading the desired software along with any required dependencies and then installs all of the components. Not only can package managers control applications, they can also manage the operating system itself. A package manager can update and upgrade the system and all of its installed applications to latest versions.
Software and applications are bundled into packages and Linux distributions are categorized by these package types. The three basic types of packages are Debian (deb), RedHat Package Manager (RPM), and other distributions.
Debian Based Linux Distributions
The deb package type was created in 1993 for the Debian Linux distribution. Debian is one of oldest Linux distributions and it’s a very popular choice on which new distributions are based. Popular distributions that use .deb packages include:
- Linux Mint
In 1993 Ian Murdock announced a new Linux distribution that was to be developed openly with the GNU philosophy. Ian gave his distribution the name Debian which is a combination of his girlfriend’s name Debra and his own name. At first it was a small project, but today Debian is one of biggest open source projects in existence.
Debian is an universal operating system and supports almost all CPU architectures and it is a very popular in the server space. Although Debian is known for rock solid stable software, there are variants. There is Debian old stable, stable, testing, unstable and experimental. As you go from old stable to experimental, you find newer and less stable software. As for package management, Debian uses two package managers, apt and aptitude.
Announced in 2004, Ubuntu is based on Debian unstable. Ubuntu is the most widely used and most popular Linux distribution today. It’s also the Linux distribution surrounded by the most controversies. Ubuntu started with the Gnome desktop, but a few years ago Ubuntu developed its own desktop environment named Unity. The Ubuntu installation process is easy and thus is popular with those new to Linux. Ubuntu uses apt and its graphical fronted Ubuntu Software Center for package management.
Linux Mint is a popular distribution based on Ubuntu. Mint started out simply being Ubuntu with pre-installed multimedia codecs and proprietary drivers. However, it has since grown and is a very popular alternative to Ubuntu.
RPM Based Linux Distributions
RedHat created the rpm package format for use in its distribution. Popular RPM based distributions include:
- RedHat Enterprise Linux (RHEL)
Fedora is the upstream of the commercial RedHat Enterprise Linux distribution, or RHEL for short. What makes Fedora special is it uses newer technology and packages from the open source world than RHEL. Fedora, like RHEL, uses the yum package manager.
OpenSuse started out a German translation of Slackware Linux, but eventually grew into its own distribution. OpenSuse is known for the KDE desktop and stability. For package management OpenSuse uses zypper and its graphical fronted, the Yast software center.
Mageia Linux is an fairly new Linux distribution that is based on Mandrake Linux. Mageia is easy to install and easy to use. Mageia utilizes urpmi and drakrpm for package management.
Other Linux distributions
Arch Linux uses pkg.tar.xz packages and has it’s own package manager called pacman. Arch does not come with a graphical installer and the whole installation process is done via a terminal. This can be intimidating for new Linux users. The main philosophy behind Arch is KISS – keep it simple, stupid. Arch has been forked in some popular beginner-friendly distributions such as Manjaro Linux.
Founded in 1992 by Patrick Volkerding, Slackware is the oldest Linux distribution in use today. Slackware does not have a package manager and all the software is compiled by the system administrator or normal users of the system. Slackware packages are simply source code. If you really want to learn a lot about the Linux really works, use Slackware.
Gentoo is based on the portage package management system. Gentoo can be difficult to install and can even take as long as a couple of days to complete the entire installation process. The advantage of such an approach is that the software is built for the specific hardware that it will be running on. Like Slackware, Portage uses application source code. If you like the idea of Gentoo, but are looking for something beginner friendly, try Sabayon.
Graphical User Environments
When choosing the right Linux distribution for you, it can be confusing given the variety of choices in desktop managers. While Microsoft Windows users only have one desktop manager, Linux users can chose their desktop environment. The desktop environment, or the graphical user interface (GUI), is what is displayed on the monitor. Said another way, it’s how the system looks. Popular desktop managers include KDE, Gnome, Xfce, Cinnamon and LXDE.
KDE was created in 1996 and is probably the most advanced desktop manager on the market. By default KDE includes several applications that every user needs for a complete desktop environment. KDE has some features that are not available in other desktop managers. The KDE workspace is called Plasma. Combine Plasma with the other KDE applications and you get what is called the KDE software compilation, or KDE SC for short.
Popular distributions that use KDE include:
- Linux Mint
Gnome is an desktop manager made for the community and by the community. This is a great example of how the open source community works. Gnome can easily be expanded with the use of plug-ins. It doesn’t require a lot of resources and can be a great choice for older and slower hardware. Popular distributions that use Gnome include:
Cinnamon is a fork of the Gnome desktop manager and is developed by the Linux Mint community. It recreates the look of Gnome 2 with an modern touch. The minimum system requirements for Cinnamon are the same as they are for Gnome.
Xfce is an excellent choice for older computers. Light and fast are Xfce’s two biggest features. The system requirements are a measly 300Mhz CPU and 192Mb of RAM. Popular distributions that use Xfce include:
LXDE is an another fast and light desktop manager. Based on the OpenBox windows manager, LXDE is suitable for old computers. Popular distributions using LXDE include:
- Linux Mint
Unity was developed by Canonical for their Ubuntu Linux distribution. To date, Ubuntu is the only distribution that uses Unity. Unity requires greater hardware resources than most graphical environments. You’ll need a 1 GHz CPU and 1Gb RAM in order to get Unity to work. With those specs, Unity will be so slow that it’s almost unusable. For Unity, the more RAM and CPU, the better.
Which One if Right for You?
We’ve covered packages, distributions, and desktop managers, but we still have one more thing to talk about – How to choose the right Linux distribution for you! Unfortunately there is no simple answer to this question. If everyone had the same needs and tastes, then it would be easy. To find the perfect distribution for you, you are going to have to invest some time into downloading and trying out a few different distros.
One effective strategy is to start with the Top Ten Distributions list at DistroWatch.com and start trying them out, one by one. You could also speed up the process by purchasing a copy of The Linux Screenshot Tour Bookwhich provides a few key screenshots from each of the most popular Linux distributions.