Linux is an operating system that is loosely based on Unix, which is a mainframe computer operating system developed by AT&T’s Bell Laboratories in the early 1960’s. Linux is often referred to as a Unix-like operating system even though Linux is actually only the kernel of that operating system. The operating system that sits on top of the Linux kernel is GnuOS, which was developed by a computer software developer and programmer by the name of Richard Stallman in the 1980’s.
It was in the early 1990’s that Linus Torvald’s, a Finnish programmer, developed the Linux kernel which was originally proprietary. The kernel v1.0 was actually developed on paper at the kitchen table of Linus Torvald’s himself. Richard Stallman found out about the Linux kernel v1.0 that Linus had developed and approached him to make it a free kernel rather than proprietary and asked if he could incorporate it into his free sourced GnuOS. Linus finally agreed and today we have the actual operating system which is referred to as Gnu/Linux OS.
Linux, like Window-based OS’s, control the hardware via the Linux kernel and allow the user to have a desktop user interface–either Graphical User Interface (GUI) or Command-Line (CLI) via a Terminal from which to run applications in the OS. There are literally hundreds of thousands of free applications that run on Gnu/Linux which permit the user to be productive and enjoy working with the PC. You can find a listing of the most commonly-developed and community- or commercially-supported distros atwww.distrowatch.com. Linux is designed for older hardware running on a BIOS platform with Intel-based x86 or AMD 32-bit microprocessors, but is also very effective in running on the newer 32-bit and 64-bit microprocessors and the UEFI platforms on the modern PCs of today.
Gnu/Linux comes in almost a thousand different distributions–many free, but some will cost you–that you can freely download from the distribution homepage or mirror sites that support them. Distributions come in different flavors that support the Gnome, Gnome2, Gnome3, KDE, Mate, or other desktop environments. The most popular distribution today is Ubuntu. This distribution started out as a Linux distro developed by Mark Shuttleworth and originates in South Africa. The word Ubuntu is a South Aftican word in the Nguni language which loosely describes how one is connected to others. The philosophy of the Ubuntu-based company, Canonical, LTD., in South Africa is one of caring for others. Hence, its founder and current CEO, Mark Shuttleworth, has followed this mantra by providing the OS freely to the masses and supporting its many features that bring people together in a caring and sharing community. Not all Gnu/Linux providers freely give the user the operating system, requiring them to pay for the OS or, at least, to pay for the physical media if they choose not to download it from the Internet.
My favorite Gnu/Linux OS is Red Hat. This company, headquartered in Raleigh, North Carolina, no longer supports the desktop PC, but instead has decided to become a business that supports mainly the Enterprise environment with various Server-based and now Cloud-based versions of its heretofore free Linux software OS. However, I have turned to CentOS, which is a Community Enterprise Linux OS based on RHEL. Version 7 is the current version of the operating system and features the newly implemented Systemd that replaces init.d. Systemd, unfortunately, is not widely acceptable nor embraced in the Gnu/Linux community and many-a-distribution has faded into the background as a result of the Linux community and its kernel developer, Linus Torvalds, forcing it upon them.
We will be looking at many different facets of the Gnu/Linux operating system in subsequent blogs. We will dive into the directory and file structure; look at the Terminal or Command-Line commands used to manage these; investigate disk and filesystem commands in Linux; touch on the important files and directories and their hierarchical structure in the OS and the concept of permissions; study the Linux Administrator Commands; research the various Linux Search Tools; look at monitoring memory and processor functionality and various processes that run in Linux; talk about scheduling jobs with Crontab; discuss Shell Scripts and what they are and how to write them for the many shells that exist in Gnu/Linux; and finally, we will look at editors that can be used in the Terminal, such as vi, vim, and emacs.