0% found this document useful (0 votes)
21 views11 pages

Understanding Linux: Uses and Components

Uploaded by

tigersiin4
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views11 pages

Understanding Linux: Uses and Components

Uploaded by

tigersiin4
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Chapter one

What is Linux?
Linux is a Unix-like, open source and community-developed operating system (OS)
for computers, servers, mainframes, mobile devices and embedded devices.

How is the Linux operating system used?


Every version of the Linux OS manages hardware resources, launches and handles
applications, and provides some form of user interface.

The enormous community for developers and wide range of distributions means that a
Linux version is available for almost any task, and Linux has penetrated many areas
of computing.

For example, Linux has emerged as a popular OS for web servers such as Apache, as
well as for network operations, scientific computing tasks that require huge compute
clusters, running databases, desktop and endpoint computing, and running mobile
devices with OS versions like Android.

The Linux OS can be found in many different settings, supporting many


different use cases. Linux is used in the following ways:

 Server OS for web servers, database servers, file servers, email servers and any
other type of shared server. Designed to support high-volume and multithreading
applications, Linux is well-suited for all types of server applications.

 Desktop OS for personal productivity computing. Linux is an open source and


freely available desktop environment for users who prefer it to commercial OSes.

 Headless server OS for systems that do not require a graphical user interface
(GUI) or directly connected terminal and keyboard. Headless systems are often
used for remotely managed networking server and other devices.
 Embedded device or appliance OS for systems that require limited computing
function. Linux is used as an embedded OS for a variety of applications, including
household appliances, automotive entertainment systems and network file system
appliances.

 Network OS for routers, switches, domain name system servers, home networking
devices and more. For example, Cisco offers a version of the Cisco Internetwork
Operating System (IOS) that uses the Linux kernel.

 Software development OS for enterprise software development. Although many


development tools have been ported to Windows or other OSes, Linux is home to
some of the most widely used open source software development tools.

 Cloud OS for cloud instances. Major cloud computing providers offer access to
cloud computing instances running Linux for cloud servers, desktops and other
services.

Linux is highly configurable and depends on a modular design that enables users to
customize their own versions of Linux. Depending on the application, Linux can be
optimized for different purposes such as:

 networking performance;

 computation performance;

 deployment on specific hardware platforms; and

 deployment on systems with limited memory, storage or computing resources.

Users can choose different Linux distributions for specific applications or adapt a
specific distribution to incorporate custom kernel configurations.
Linux components and terminology
The Linux OS system incorporates several different components, including:

 Bootloader. A bootloader is responsible for managing the boot process of the


computer and for starting the Linux kernel. It can also be used to manage systems
that boot more than one OS.

 Kernel. The core of the Linux system, the kernel handles network access,
schedules processes or applications, manages basic peripheral devices and
oversees all file system services. The Linux kernel is the software that interfaces
directly with the computer hardware.

 Init system. The first process to run once the kernel is loaded. A process is an
instance of a program running on a computer, and the init system initializes the
system to enable it to run other processes. Init is a daemon program that acts as the
parent process to all other processes running on the system. Init can be configured
to start specific processes at system initialization. For example, when the system
will be running a web server the init system can be configured to load all
necessary web server software.

 Daemons. This is a program that runs in the background, handling requests for a
service. A web server running on a Linux server depends on a daemon, usually
named httpd, to listen for web server requests.

 Graphical server. This is the software that controls how graphics are displayed on
a computer. Without a graphical server, users can only interact with the Linux
system through a command-line interface. The X Window System, also known as
X11 or X, is the most common graphical server for Linux, though not the only
one. X runs as a server daemon on the system and is called upon by applications
when graphical output is required.

 Desktop environment. This is the collection of applications and user interface


controls with which users interact when using Linux as a desktop platform. Access
to the desktop environment is usually controlled through the X Window System or
another graphical system. Each desktop environment defines its own look,
including the way graphical elements like windows, pull-down menus and files are
displayed and manipulated. The desktop environment will also include a set of
default applications for managing files and folders, text editing, running a
command-line session and other common tasks.

 Applications. This is the software that is installed during and after the initial
Linux installation.
How the Linux operating system works
The Linux OS follows a modular design that is the key to its many variations and
distributions. All Linux distributions are based on the Linux kernel, but they can differ
depending on factors such as:

 Kernel version. Distributions can be configured with more recent versions to


incorporate newer features or with older versions to be more stable.

 Kernel modules. This is software that can be loaded and unloaded into the kernel
to extend functionality without rebooting. Kernel modules are often used to
support:

o device drivers, which use code that controls how attached devices operate;

o file system drivers, which use code that controls how the kernel works with
different file systems; and

o system calls, which use code that controls how programs request services from
the kernel.

 Configuration options. Linux kernels compiled with configuration options set to


include only device or file system drivers are used for some specialized
distributions; for example, compiling a kernel for a wireless device without any
wired network device drivers.

The Linux kernel is the one thing that all systems running Linux have in common.
Linux works by:
 Loading and booting a Linux kernel.

 Once booted, the kernel manages all system input and output. The system is
initialized, and processes can be started.

 As system processes are started, the system can be used for processes that include
network server functions, commands entered interactively via command line,
desktop applications or any application or program.

While the kernel may be almost identical -- with some divergence for configuration
and compilation differences -- the user experience can vary widely, depending on how
the Linux system is being used. For example, some Linux use cases with widely
different user experiences include:

 Desktop productivity systems, such as those used by software developers or other


professionals. Software development workstations may be optimized for
performance, while desktops for administrative professionals may be optimized for
use of desktop productivity tools.

 Network servers may not even include a terminal for direct access.
These headless servers are managed remotely through network terminal or
Windows sessions. Servers may be used by many but should be directly accessed
only by authorized system admins.

 Thin clients enable users to access a rich desktop environment from a lightweight
device. This includes Raspberry Pi single-card computers and Google
Chromebooks.

The pros and cons of using Linux


Some advantages of using Linux include:

 Open source software. The Linux kernel is released under the GNU GPL open
source software license. Most distros include hundreds of applications, with many
options in almost every category. Many distributions also include proprietary
software, such as device drivers provided by manufacturers, to support their
hardware.

 Licensing costs. Unlike Microsoft Windows or Apple macOS, Linux has no


explicit licensing fees. While system support is available for a fee from many
Linux vendors, the OS itself is free to copy and use. Some IT organizations have
increased their savings by switching their server software from a commercial OS
to Linux.

 Reliability. Linux is considered a reliable OS and is well-supported with security


patches. Linux is also considered to be stable, meaning it can run in most
circumstances. Linux also copes with errors when running software and
unexpected input.

 Backward compatibility. Linux and other open source software tend to be


updated frequently for security and functional patches, while retaining core
functionality. Configurations and shell scripts are likely to work unchanged even
when software updates are applied.

 Many choices. Between the hundreds of available distributions, thousands of


applications and almost infinite options for configuring, compiling and running
Linux on almost any hardware platform, it is possible to optimize Linux for almost
any application.

Some disadvantages of using Linux include:

 Lack of established standard. There is no standard version of Linux, which may


be good for optimizing Linux for particular applications, but less so for deploying
standardized server or desktop images. The wide range of options can complicate
support as a result.

 Support costs. While an organization can acquire Linux freely without licensing
fees, support is not free. Most enterprise Linux distributors like SUSE and Red Hat
offer support contracts. Depending on the circumstances, these license fees can
reduce savings significantly.
 Proprietary software. Desktop productivity software like Microsoft Office
cannot be used on Linux desktops, and other proprietary software may be
unavailable for Linux platforms.

 Unsupported hardware. While many hardware manufacturers make Linux


device drivers available for their products, many do not.

 Steep learning curve. Many users struggle to learn to use the Linux desktop or
Linux-based applications.

Linux Features
o Multiuser capability: Multiple users can access the same system resources
like memory, hard disk, etc. But they have to use different terminals to operate.

o Multitasking: More than one function can be performed simultaneously by


dividing the CPU time intelligently.

o Portability: Portability doesn't mean it is smaller in file size or can be carried


in pen drives or memory cards. It means that it support different types of
hardware.

o Security: It provides security in three ways namely authenticating (by


assigning password and login ID), authorization (by assigning permission to
read, write and execute) and encryption (converts file into an unreadable
format).

o Live CD/USB: Almost all Linux distros provide live CD/USB so that users can
run/try it without installing it.

o Graphical User Interface (X Window system): Linux is command line based


OS but it can be converted to GUI based by installing packages.

o Support's customized keyboard: As it is used worldwide, hence supports


different languages keyboards.

o Application support: It has its own software repository from where users can
download and install many applications.
o File System: Provides hierarchical file system in which files and directories are
arranged.

o Open Source: Linux code is freely available to all and is a community based
development project.

Why Use Linux?


Linux is completely different from other operating systems in many ways.

o It is an open source OS which gives a great advantage to the programmers as


they can design their own custom operating systems.

o It gives you a lot of option of programs having some different features so you
can choose according to your need.

o A global development community look at different ways to enhance its


security, hence it is highly secured and robust so you don't need an anti virus to
scan it regularly. Companies like Google, Amazon and Facebook use linux in
order to protect their servers as it is highly reliable and stable.

o Above all you don't have to pay for software and server licensing to install
Linux, its absolutely free and you can install it on as many computers as you
want.

o Its completely trouble free operating system and don't have an issue with
viruses, malware and slowing down your computer.

Linux Distributions List


There are on an average six hundred Linux distributors providing different
features. Here, we'll discuss about some of the popular Linux distros today.

1) Ubuntu

It came into existence in 2004 by Canonical and quickly became popular.


Canonical wants Ubuntu to be used as easy graphical Linux desktop without the
use of command line. It is the most well known Linux distribution. Ubuntu is a
next version of Debian and easy to use for newbies. It comes with a lots of pre-
installed apps and easy to use repositories libraries.

Earlier, Ubuntu uses GNOME2 desktop environment but now it has developed its
own unity desktop environment. It releases every six months and currently
working to expand to run on tablets and smartphones.

2) Linux Mint

Mint is based on Ubuntu and uses its repository software so some packages are
common in both.

Earlier it was an alternative of Ubuntu because media codecs and proprietary


software are included in mint but was absent in Ubuntu. But now it has its own
popularity and it uses cinnamon and mate desktop instead of Ubuntu's unity
desktop environment.

3) Debian

Debian has its existence since 1993 and releases its versions much slowly then
Ubuntu and mint.

This makes it one of the most stable Linux distributor.

Ubuntu is based on Debian and was founded to improve the core bits of Debian
more quickly and make it more user friendly. Every release name of Debian is
based on the name of the movie Toy Story.

4) Red Hat Enterprise / CentOS

Red hat is a commercial Linux distributor. There products are red hat enterprise
Linux (RHEL) and Fedora which are freely available. RHEL is well tested before
release and supported till seven years after the release, whereas, fedora provides
faster update and without any support.

Red hat uses trademark law to prevent their software from being redistributed.
CentOS is a community project that uses red hat enterprise Linux code but
removes all its trademark and make it freely available. In other words, it is a free
version of RHEL and provide a stable platform for a long time.
5) Fedora

It is a project that mainly focuses on free software and provides latest version of
software. It doesn't make its own desktop environment but used 'upstream'
software. By default it has GNOME3 desktop environment. It is less stable but
provides the latest stuff.

Choosing a Linux Distro

Distribution Why To Use

UBuntu It works like Mac OS and easy to use.

Linux mint It works like windows and should be use by new comers.

Debian It provides stability but not recommended to a new user.

Fedora If you want to use red hat and latest software.

Red hat To be used commercially.


enterprise

CentOS If you want to use red hat but without its trademark.

OpenSUSE It works same as Fedora but slightly older and more stable.

Arch Linux It is not for the beginners because every package has to be
installed by yourself.
Linux kernel-based OSes

o Android, the commercial operating system of Google, works on the basis of


Android OSP that executes on various devices like set-top boxes, smart TVs,
smartphones, etc.

o ChromeOS, the commercial operating system of Google, works on the basis of


ChromiumOS, which executes only on tablet computers, Chromeboxes, and
Chromebooks. Like Android, ChromeOS contains the Google Play Store and
many Google apps.

Some other distributions require specific niches, including:

o Routers: e.g., targeted by Open Wrt (the Tiny embedded router distribution)

o Internet of things: e.g., targeted by Microsoft's Azure Sphere and Ubuntu


Core

o Home theatre PCs: e.g., targeted by Mythbuntu, Kodi (formerly XBMC), and
KnoppMyth

o Specific platforms: e.g., the Raspberry Pi platform is targeted by Raspberry Pi


OS

o Education: some examples are Karoshi and Edubuntu, and server systems are
PCLinuxOS-based

o Scientific workstations and computer servers: e.g., aimed by Scientific


Linux

o Penetration testing, digital forensics, and computer security: some


examples are Parrot Security OS and Kali Linux

o Anonymity and privacy: e.g., targeted by FreedomBox, Qubes, Whonix, or


Tails

o Gaming: e.g., SteamOS

o Offline use: e.g., Endless OS

Common questions

Powered by AI

The modular design of the Linux operating system allows it to be highly configurable and adaptable across a wide range of computing environments. This is because its architecture is based on a core kernel which can be extended through the use of kernel modules. These modules can be loaded or unloaded to add or remove functionalities such as device drivers and file system support without requiring a system reboot, which is crucial for tailoring the OS to specific needs. The modularity allows users to optimize Linux for various purposes, whether it be enhancing networking performance, computation, or deployment on systems with limited resources .

Linux supports both headless and graphical server environments by providing flexibility in how the system is configured and used. Headless servers, which do not require a graphical user interface, can be managed remotely through secure shell (SSH) or other network-based management tools. This is ideal for network servers that are accessed by system administrators rather than standard users. Conversely, when graphical interactions are required, Linux utilizes a graphical server such as the X Window System, which provides the necessary graphical interface layer. The implications of these capabilities are vast: headless systems offer efficiency and resource conservation for server tasks, while graphical environments enhance user interaction and application support, accommodating a broader range of use cases from server management to desktop environments .

Linux being open source offers numerous benefits compared to proprietary systems. It allows users to freely customize and modify the code, which fosters innovation and rapid development by a global community. This openness also means there are no licensing costs and a diverse array of distributions to suit many applications. On the downside, this lack of standardization can lead to complications with support and compatibility. Additionally, while the OS itself is free, support costs can be significant, and some proprietary software, like Microsoft Office, is unavailable on Linux platforms .

Ubuntu and Red Hat differ in their approach to providing desktop environments based on user friendliness and enterprise focus, respectively. Ubuntu targets individuals and newcomers to Linux by offering a user-friendly graphical interface with pre-installed apps, making it accessible without needing command line expertise. Initially using GNOME2, it now features the Unity desktop to simplify user interaction. Red Hat, particularly through its Red Hat Enterprise Linux (RHEL) distribution, is oriented towards enterprise use with a preference for stability and long-term support. RHEL offers a more traditional GNOME3 environment optimized for corporate users who require reliability and support contracts for their IT needs .

A company might prefer CentOS for their server infrastructure because it is a free and open version of Red Hat Enterprise Linux (RHEL). CentOS derives from RHEL's code but removes trademark elements, offering a stable and long-term platform similar to RHEL without the associated costs. This makes it an attractive option for organizations seeking a stable, reliable system for server deployment, especially if they want to avoid the expense of commercial support while retaining the performance and capabilities of a RHEL-based system .

Linux's security features, such as multiuser capabilities, file permissions, and its open-source nature, enhance its resistance to malware. Multiuser support ensures that unauthorized access to critical files and system resources can be heavily restricted, while file permissions and user roles limit potential points of attack. The open-source nature allows for continuous scrutiny and rapid patching by the global developer community, which can identify and rectify vulnerabilities more swiftly compared to closed-source systems. Furthermore, the presence of inbuilt security mechanisms like SELinux and AppArmor add additional layers of protection, making Linux-based systems inherently more robust against malware threats .

Linux ensures backward compatibility by frequently updating its software with security and functionality patches while retaining core functionality. This design philosophy means that older configurations and shell scripts function without modification even after updates. The benefits of this approach include reducing the need for constant reconfiguration when applying updates, allowing for smoother transitions with software upgrades, and ensuring stability and reliability in systems after updating, which is particularly valuable in enterprise environments where uptime and consistent performance are critical .

The init system in Linux plays a crucial role in process management and system initialization. It is the first process to run once the kernel is loaded and acts as the parent process for all subsequent processes. The init system initializes the system to allow other processes to run and can be configured to start specific processes automatically, such as web server software. By organizing and managing these processes, the init system ensures that the operating system boots correctly and all necessary services are started as needed .

The multiuser capability of Linux significantly enhances system security and resource management by allowing multiple users to access the same system resources while maintaining separate environments. This separation is achieved through individual user accounts, which can be assigned specific permissions for file access, program execution, and resource utilization. As a result, the system can prevent unauthorized access to sensitive data and minimize the risk of one user's actions adversely affecting others. In terms of resource management, this capability allows Linux to allocate CPU time and memory efficiently among concurrent users, supporting multitasking and optimizing performance .

Organizations choose Linux for cloud computing environments primarily due to its high configurability, stability, and cost-effectiveness. Linux's modular design allows for customizing OS environments to meet specific cloud service requirements, enhancing both performance and security. Moreover, Linux's open-source nature means no licensing fees are necessary, which can significantly reduce costs in large-scale deployments. Major cloud providers offer Linux-based services, reflecting the OS's widespread acceptance and reliability in managing cloud infrastructures .

You might also like