It stuns me to see how many enterprises and organizations still chose to use closed proprietary software such as Windows, Active Server Pages, Sharepoint, Office Suite, etc. While there are perfect alternatives available as free software (free to use and adapt). Not only is using software such as Linux, MariaDB, Nginx free, they also are much easier to change to how you want them to work. Getting a license for your company to use Windows as an operating system can cost you hundreds of thousands a year, not counting that you might still want your own IT department for development and support.
Why don’t these enterprises use Linux, which is free software to begin with? It all comes back to education. Here in Belgium, when someone goes to university or attends a school, Windows literally tries to shove all of its software down to everyone’s throats at bargain prices. This obviously leads to a mass audience that only knows Windows and is familiar with making documents in Word and Microsoft’s interfaces. People are reluctant to change, and thus changing the habit – in this case the operating system – barely never happens. Linux is also more challenging in terms of difficulty as the user has to actually understand how it works, and how your commands to the system will affect the system. But even today you have graphical user interfaces where users can simply click and drag for basic operations. Proper education and recognizing the operating system as a viable replacement in school environments would be a first good step to reduce what I see as, indoctrination of software.
Linux distributions and their goals
Linux comes in different tastes and flavors, depending on what you find important. Several organizations offer what we call a ‘distro’, which is short for distribution. Each of these organizations built on top of the Linux kernel, and usually offer a package management system to install software. There is a range of largely advanced distro’s, as well as smaller ones focusing on specific aspects.
What makes a distro different from each other?
Each organization has a different philosophy and goals. For example one could focus on stability, security, cutting-edge software or innovation. Another distribution could opt for a more stable approach, only using software that has proven itself in the industry, eliminating the potentially unstable new features.
You will find more conservative distro’s, such as Debian or CentOS, who prefer running stable, secure versions of software with upstream porting (this means they apply critical bug fixes themselves from more modern distros) while cutting out modern features or commercial branding. You have distro’s who are more innovative (but with this comes an increased change of breaking your production environment, and potentially requires you to work on settings and features where problems are not well documented). Depending on the distribution, they also come with different user interfaces, but this doesn’t matter much to us since we are going to focus solely on using the command-line in this series.
We can divide distro in the way they supply you with packages.
Debian supports a lot of different architectures
which makes it suitable to run on pretty much anything. Debian uses dpkg and apt-get, which is different from Red Hat’s yum approach to package management. Apt-get allows you to easily install a program without having to set up your tools to compile a program from source code.
Red Hat (RHEL)
Red Hat Linux is commercial software and meant for enterprises. Fedora is a community distribution sponsored by Red Hat. Red Hat Enterprise Linux, or RHEL, is a based of Fedora. Fedora has a quickly changing development cycle with rolling releases. It also is up to par with the latest technologies, which makes it a very interesting distro to choose if you like to be up to date with everything.
CentOS is a distro which uses the sources of Red Hat and is fully compatible with upstream RHEL versions. CentOS focuses on stability within a production environment. This means that certain software might not have the latest features as in Fedora. They do however patch security fixes for the older packages.
There are literally dozens of distributions out there, if you are interested in learning more about them, you can check out their wikipedia page.