Introduction to Linux

Introduction to Linux

Before learning Linux, let’s go through the understanding of basic concepts.

Operating system:

Operating system is basically hardware communicating with software of the computer.

The computer has lot of processes, tasks using CPU (Central processing unit) but to operate all of these we need a software which is operating system.

Our system is just a machine that has all the Hardware things going on ready for processing but to run all of them we need a operating system.

  • Unix is a shell based OS with CLI (Command Line Interface) and Linux is Unix-like, Open source.

  • Windows is GUI based OS.

  • Mac OS is the Enterprise version of the UNIX i.e (Paid)

  • Here windows is mostly used Operating system whenever we buy a laptop, we generally do have windows OS.

  • However Linux is the Operating system that is mostly used in the Industry.

Types of OS

Client OS :

  • Client OS is a Service user.

  • Client OS can be used by an individual user itself.

  • for example : Windows 11

  • Basically, Client OS is only for personal use.

Server OS:

Server OS is a Service provider.

Server OS can be accessed by multiple user.

Server OS is mainly used in Industry in the production environment.

for example: Red-hat enterprise Linux (RHEL), Ubuntu,

Windows Server 2022.

History:

  • Linux is created by Linus Torvalds in 1991.

  • The name “Linux” comes from Linus + Unix.

Linux:

  • Linux is an open-source operating system based on UNIX and community-developed OS.

  • LINUX stands for Lovable Intellect Not Using XP.

  • It is known for its security, reliability & Flexibility.

  • Linux is a multi-programming, multi-user OS, it means same system can be used by different users with different access rights & simultaneously many applications can be run on it.

  • Linux can work on different types of hardware, so Linux is portable.

  • No reboot needed, no anti-virus software needed to be installed on Linux OS.

Linux Distribution:

  • Linux distribution is collection of software packages that run on Linux kernel.

  • Linux distribution is also known as “Linux distros

Some popular distros are:

Ubuntu, Centos, Red Hat Enterprise Linux(RHEL), Fedora Linux, Debian, Kali Linux, Linux mint etc

Linux Architecture:

Kernel:

  • Kernel is the heart & core of an OS that manages operations of computer & Hardware.

  • It virtualizes the hardware resources of computer to provide each process with its virtual resources. It also helps in preventing & mitigating conflicts b/w diff processes.

Types: Micro kernel, Monolithic kernel, Exo Kernel, Hybrid Kernel

Shell:

  • Shell provides the user interface where we enter commands which shell interprets and executes.

  • Shell acts a bridge b/w user & kernel.

Here the shell communicates with kernel & the Kernel communicate with Hardware.

Hardware layer:

  • It has physical components such as RAM, HDD, CPU & I/O Devices.

  • It is responsible for providing necessary resources for system & applications to function properly.

System Libraries: Its like shared library where pre-written codes are saved to save time & effort.

System Utilities: Simplifies system administration tasks like monitoring, installing software, configuring network settings, managing users & permissions to maintain Linux systems efficiently.

Difference between Windows and Linux:

TOPICWindowsLinux
1. LicensedWindows is commercial licensed (need to pay money)Linux is GPL (General purpose language)
2. Use caseIts general purpose like games, coding, movies, photoshopLinux mainly focuses on Development, scripting, terminal, networking, programming.
3. Anti-virusNeed to buy Anti-virusNo need for Anti-virus
4. UpdatesWindows updates mostlyNo reboot time is taken
5. AdministratorAdministrator userRoot user
6. VersionsWindows XP, windows 8, Windows 10, windows vistaUbuntu, CentOS, Mint, Kali Linux

LINUX VS UNIX:

TopicLinuxUnix
1. LicensedLinux is open- source OSUnix is licensed
2. KernelLess complex kernelLarger & more complex kernel.
3. AvailabilityUsed on Enterprise & PC ’sUsed on Enterprise- level servers, workstations & less often on PC’s
4. Source code availabilitySource code is accessible to general publicThe source code is not accessible to General public.
5. Community supportLinux has a large & active community of developers & usersUnix also has community, generally smaller & more focused on enterprise level users.
6. AccessibilityFreely accessible to everyone.An OS which is licensed & is only accessed by its clients who paid.
7. Bug fixing timeThreat recognition & solution is very fast coz Linux is community driven.It requires longer hold up time to get best possible bug-fixing & a patch.
8. Use casesUsed everywhere from servers, PCs, smartphones, tablets to mainframes.Used on servers, Workstations & PC’s.
9. Shell compatibilityThe Default interface is BASH (Bourne Again shell).Initially used Bourne shell, but also compatible with GUIs.
10. OS VersionsThey are 600+ Linux Distros.Solaris, SunOS, SCO UNIX

How to install Linux?

Ways to Install Linux:

  1. Install Linux OS into the Local as Linux is a server OS, your Local will also be server.

  2. Oracle Virtual box, and download ubuntu ISO image.

  3. Vagrant tool or Docker (Virtual)

  4. WSL for Windows user that provides Windows subsystem where we can enable options for Linux.

  5. Using Cloud service provider Platforms like AWS, Azure, GCP.

  6. Dual boot.

Conclusion:

Learning Linux before DevOps is must. So learning the basic topics to understand better before performing any automation would be a win-win. Windows is licensed, however Linux is not. So, Linux is accessible for everyone. Knowing the architecture of Linux, its distros, how it is different from Windows and Unix helps us to understand, why Linux is used widely in the Industry.

Happy Learning!