About this ebook
Linux Explained is a series of articles I've published on my blog to help newcomers or beginners to Linux to discover and develop their knowledge about it.
With eight chapters, this small book will explain in simple words :
- What is Linux ?
- What is the bootloader, the init process, the shell
- What is a filesystem and how Linux work with them
- What are the file permissions
- How the users are managed
- What are the Standard Streams for input and output data
- How the memory is managed
- What is SSH and how remote access works
Related to Linux Explained
Related ebooks
Linux: Learn in 24 Hours Rating: 5 out of 5 stars5/5Linux Code Community Rating: 0 out of 5 stars0 ratingsThe Linux Command Line Beginner's Guide Rating: 4 out of 5 stars4/5Simply Linux: Basics Rating: 5 out of 5 stars5/5The Linux Mint Beginner's Guide Rating: 5 out of 5 stars5/5Linux: A Comprehensive Guide to Linux Operating System and Command Line Rating: 0 out of 5 stars0 ratingsKali Linux Rating: 0 out of 5 stars0 ratingsLinux: A Beginner's Guide to Linux Operating System Rating: 0 out of 5 stars0 ratingsLinux for Beginners: Linux Command Line, Linux Programming and Linux Operating System Rating: 4 out of 5 stars4/5LPI Linux Certification Questions: LPI Linux Interview Questions, Answers, and Explanations Rating: 4 out of 5 stars4/5Linux Interview Questions: Open Source Operating Systems Interview Questions, Answers, and Explanations Rating: 5 out of 5 stars5/5Linux Distro Super Ringan Super Stabil Untuk Penggunaan Harian & Infrastruktur Penting Edisi Bahasa Inggris Rating: 0 out of 5 stars0 ratingsThe Most Lightest & The Most Stable Free Linux Distro OS For Daily Life plus For Critical Environment Rating: 0 out of 5 stars0 ratingsLinux Essentials - A Beginner's Guide To Linux Operating System Rating: 3 out of 5 stars3/5I am Linux : Being A Ultra Linux User Rating: 0 out of 5 stars0 ratingsLinux: A complete guide to Linux command line for beginners, and how to get started with the Linux operating system! Rating: 0 out of 5 stars0 ratingsMastering Linux Administration: A Comprehensive Guide: The IT Collection Rating: 5 out of 5 stars5/5Linux Install or Dual Boot Rating: 0 out of 5 stars0 ratingsLinux Mastery: A Comprehensive Guide for Beginners and Beyond Rating: 0 out of 5 stars0 ratingsMost used commands in Linux and Unix Rating: 0 out of 5 stars0 ratingsLet's Use Bash on Windows 10! The Lite version Rating: 0 out of 5 stars0 ratingsThe Ubuntu Desktop Beginner's Guide: Second Edition Rating: 5 out of 5 stars5/5LINUX FOR NOVICES: A Beginner's Guide to Mastering the Linux Operating System (2023) Rating: 0 out of 5 stars0 ratingsLinux Ubuntu What Rating: 0 out of 5 stars0 ratingsUnix / Linux FAQ: with Tips to Face Interviews Rating: 0 out of 5 stars0 ratingsThe 101 Most Important UNIX and Linux Commands Rating: 0 out of 5 stars0 ratingsLinux for Beginners: How to Master the Linux Operating System and Command Line form Scratch Rating: 0 out of 5 stars0 ratings
Operating Systems For You
Excel : The Ultimate Comprehensive Step-By-Step Guide to the Basics of Excel Programming: 1 Rating: 5 out of 5 stars5/5Raspberry Pi Cookbook for Python Programmers Rating: 0 out of 5 stars0 ratingsHelp! iOS 17 - iPhone: How to Use iOS17 Rating: 0 out of 5 stars0 ratingsApple Card and Apple Pay: A Ridiculously Simple Guide to Mobile Payments Rating: 0 out of 5 stars0 ratingsiPhone Unlocked Rating: 0 out of 5 stars0 ratingsMacBook Pro User Manual: 2022 MacBook Pro User Guide for beginners and seniors to Master Macbook Pro like a Pro Rating: 0 out of 5 stars0 ratingsLinux Bible Rating: 0 out of 5 stars0 ratingsExploring Windows 11: The Illustrated, Practical Guide to Using Microsoft Windows Rating: 0 out of 5 stars0 ratingsPowerShell: A Beginner's Guide to Windows PowerShell Rating: 4 out of 5 stars4/5Ubuntu Linux Bible Rating: 0 out of 5 stars0 ratingsBash Command Line Pro Tips Rating: 5 out of 5 stars5/5macOS Sonoma For Dummies Rating: 0 out of 5 stars0 ratingsMastering Apple MacBook - MacBook Pro, MacBook Air, MacOS Ultimate User Guide Rating: 1 out of 5 stars1/5Windows 11 For Dummies Rating: 0 out of 5 stars0 ratingsHacking : The Ultimate Comprehensive Step-By-Step Guide to the Basics of Ethical Hacking Rating: 5 out of 5 stars5/5OneNote: The Ultimate Guide on How to Use Microsoft OneNote for Getting Things Done Rating: 1 out of 5 stars1/5Linux for Beginners: Linux Command Line, Linux Programming and Linux Operating System Rating: 4 out of 5 stars4/5Make Your PC Stable and Fast: What Microsoft Forgot to Tell You Rating: 4 out of 5 stars4/5The Mac Terminal Reference and Scripting Primer Rating: 4 out of 5 stars4/5XDA Developers' Android Hacker's Toolkit: The Complete Guide to Rooting, ROMs and Theming Rating: 2 out of 5 stars2/5Linux Basics for Hackers: Getting Started with Networking, Scripting, and Security in Kali Rating: 3 out of 5 stars3/5Linux Command-Line Tips & Tricks Rating: 0 out of 5 stars0 ratingsRaspberry Pi for Secret Agents - Second Edition Rating: 3 out of 5 stars3/5Mac Unlocked: Everything You Need to Know to Get Cracking in macOS Big Sur Rating: 0 out of 5 stars0 ratingsTor Darknet Bundle: Master the Art of Invisibility Rating: 0 out of 5 stars0 ratingsNetworking for System Administrators: IT Mastery, #5 Rating: 5 out of 5 stars5/5
Reviews for Linux Explained
0 ratings0 reviews
Book preview
Linux Explained - Sebastien Bronchard
Linux Explained
Seb
2023-02-10
Creative Commons Attribution ShareAlike 4.0
Preface
About the author
I’m Seb and I’ve discovered Linux in the early 2000s, with a first attempt to install Debian Linux on my computer, but after printing kilometers of documentation and trying to have the display working, I’ve finally gave up. A few times later, I’ve found a Linux magazine with three Mandrake 9.1 CD-ROM. That was my actual first experience with Linux until I’ve started using Ubuntu Linux with its first release in 2004.
On a more professional side, I’ve started to see Linux for servers in my second job, mainly Red Hat Enterprise Linux. I had also some AIX system under my scope. Since I was using this system for my personal computer, I became more and more enthusiast with it and after 20 years using it, I think I can write something about it. Today, I’m a solution architect working on the integration of CICD tools and process for business context and promoting the DevOps philosophy. And Linux-based systems remain my daily drivers.
About this book
Linux Explained is addressed to beginners or newcomers to the Linux world. Additionally, if you also have some experience and want to develop your knowledge about what is Linux and its concepts, you’re welcome too ! This book will (try to) keep using simple words and explanation with the purpose of being the most accessible possible.
Linux Explained started as a series of articles I’ve wrote for my blog. Following this first publication, I had the idea to rewrite these articles to fit in a book. The original series is available at the following URL : https://blog.zedas.fr/tags/linux-explained/
The sources of this book (texts and diagrams) are available on GitHub and you are free to contribute to this work. This book is not set in stone and its content may evolve and improve with each contribution.
https://github.com/Wivik/linux-explained
Copyright
Unless other statement, this book content, including the images, is licensed under Creative Commons BY-SA 4.0.
CreativeCommons BY-SA CreativeCommons BY-SA
The cover page is illustrated with Tux, the Linux mascot, drawn by Larry Ewing and licensed under Creative Commons BY-SA.
Contributors
Chapter 1 : What is Linux ?
Usually, when we talk about Linux, we talk about a Linux Distribution. But actually, Linux itself is just one component of an operating system (ok, a very central one). Linux is a kernel¹, a core computer program that manages the entire operating system. It’s the interface between the hardware and the software : CPU access, Memory access, Filesystem access, devices access, all of this is made through the kernel. By misuse of langage, we assimilate Linux to an operating system but it’s not exactly accurate because the OS is the integration of the Linux Kernel and various other softwares (we will detail this in the What is a Linux Distribution
part).
This distinction is not specific to Linux, even in Microsoft’s world you have it, but it’s less confusing as the software is managed by a unique company unlike a Linux Distribution which integrates various projects together. Actually, Microsoft Windows 11 or 2022 are both operating systems based on the Windows NT Kernel², the core program of Windows’ architecture. In Apple’s world, the kernel running behind every systems edited by the company is named XNU³. Since these two companies are providing a comprehensive product, these details are less advertised.
Linux is distributed under a free and open-source license, the General Public License 2.0, allowing anybody to use it, modify it, distribute it, and integrate it in other works. This is one of the many reasons that made the Linux kernel very popular for Servers systems, embedded systems, mobile devices (Android⁴) is based on Linux too), and even mainframes and supercomputers. If Linux was born for Intel x86 architecture at the beginning, the kernel now supports a multitude of platforms : ARM, PowerPC, etc.
Unix and Linux history
In August 2021, Linux celebrated its 30th birthday⁵. In this article, in French (I can translate it later if requested), I’ve made a little history about the origins of the Linux Kernel. Linux is what we commonly call a Unix-Like
or a POSIX compatible
kernel. But, what are Unix
and POSIX
?
Back in the mid-1960, the MIT, Bell Labs and General Electric were developing an operating system for a mainframe computer. This OS, named Multics⁶, was innovative (with the idea of sharing the computer resources for multiple users, hierarchical filesystem, etc) but very difficult to develop and the project was eventually abandoned. The experimentation was reimplemented into a smaller scale project for a single-tasking system, Unics, later spelled Unix⁷ for reasons that seems to have been forgotten. The first version was released in 1970 after a development started in 1969, a date well known in the Information Technologies sector because it’s what we call the Unix epoch⁸, a date and time representation using the number or seconds elapsed since the 1st January 1970 00:00:00 UTC. The Unix epoch timestamp is widely used in programmation to manipulate date and time. Also another very noticeable fact related to Unix is the creation of the C programming language⁹ at the same moment. Unix itself has been rewritten in C with the release of its version 4 in 1973.
Unix has been later selected as the basis for a new operating system standard written in 1980 by the IEEE Computer society, the Portable Operating System Interface¹⁰, or POSIX. POSIX is a standard describing both the system and user-level application programming interfaces (APIs) with command line shells and various utilities. The reason of this standard creation is mainly because Unix has been progressively copied, adapted and fragmented into various Unix-like systems developed by several companies that were often mutually-incompatible (HP-UX from HP, SunOS/Solaris from Sun Microsystems, AIX from IBM, etc).
Today, the Single Unix Specification is still evolving and the operating system based on the POSIX standard can be certified for using the commercial brand Unix. This is why Linux is described as a Unix-like
system, because it was developed as a compatible POSIX kernel, but is not certified.
Linux itself is inspired by Minix¹¹, another Unix-like system used by students. Created in August 1991 by Linus Torvalds, a 21 years old Finnish student, the source code of Linux has been submitted to the Minix mailing-list community. A couple of months later, the first official
version of Linux able to run Bash, GCC, and some other GNU tools, was released. Despite its various limitations at this time, Linux has been adopted by numerous developers and later integrated by the GNU Project for its free and open source operating system, the GNU Operating System. The GNU Project was also developing its own kernel, GNU Hurd, since the mid-1980s.
In 1992, Linus adopts the GPLv2 license for the Linux source code and distributes it publicly, including the drivers code, in contrast of Unix which was mainly a proprietary system. Linux would eventually support the POSIX APIs and being able to run software and applications developed for Unix. The version 0.92 of