In Q&A

1. What is Linux?
Linux is a free and open-source operating system based on UNIX. It was first released in 1991 by Linus Torvalds. The goal of developing Linux was to provide a free and low-cost alternative to proprietary systems like Windows and macOS.

2. What is the Linux Kernel?
Written in C programming language, the Linux kernel is the core component of a Linux system. It is the lowest level of software that can interact with the hardware. It interfaces the OS and the underlying hardware and allows communication between the two.
The kernel performs the following major tasks:
Manages underlying hardware devices.
Launches and manages applications.
Manages OS resources including RAM, CPU, and disk utilization.

3. What is GRUB?
GRUB (Grand Unified Bootloader) is a bootloader from the GNU project. It’s a program that is responsible for managing the boot process. Basically, it takes over from the BIOS at system startup and loads the kernel into the main memory. The kernel then loads the operating system and its components.
The GRUB splash screen is typically what you will see on your screen once the system starts up. It displays a simple menu that provides a couple of boot options.

4. What are the Essential Components of Linux?
A Linux system comprises the following essential components:
Kernel – This is the core part of the Linx system that manages underlying hardware components and applications at the OS level.
Shell – This is an interpreter that provides a command-line interface that accepts commands issued through the keyboard and passes them to the OS for execution.
GUI – This is an acronym for Graphical User Interface. It comprises graphical components that users leverage to interact with the system. These include the desktop, windows, icons, buttons, taskbars, and pop-ups.
Application programs – These are software applications installed on a Linux system that perform specific tasks. For example Firefox web browser, VLC media player, LibreOffice suite, and many more.

5. What are Shells Used in Linux?
Commonly used shells In Linux include:
bash [Bourne Again Shell] – This is the default shell on a majority of Linux systems.
zsh [Z Shell] – This is the default shell in Kali Linux and macOS. It is built on top of bash and packs with additional features such as spelling correction, plugin support, better customization, etc.
ksh [Korn Shell] – This is a high-level programming language shell.
csh [C Shell] – Its syntax borrows heavily from the C programming language. Highly useful for anyone with C programming knowledge.

6. What is Swap Space in Linux?
Swap space refers to space on the hard drive that is an extension of the RAM or physical memory. It is used by the system when the RAM capacity is almost getting depleted and can no longer support running applications. Swap space stores additional programs which can no longer be processed by the RAM.

7. How to Check Linux Memory Utilization?
The following are some of the most used Linux commands you can use to check your system’s memory utilization.
free – Display the amount of free and used memory in the system.
top – Display running Linux processes and utilization.
htop – An interactive system monitor, process viewer, and process manager.
vmstat – Display virtual memory statistics.
To check your Linux system memory performance and utilization, run:
$ free -m
$ top
$ htop
$ vmstat

8. How to Check Linux Disk Space Utilization?
Disk space usage can be checked using the df and du commands.
df Command – Show Linux File System Disk Usage
The df command (short for disk free) is used to display the total and available disk space for the filesystems on your system. It is often used with the -Th options for displaying the output in a human-readable format.
$ df -Th
Show Linux File System Disk Usage
du Command – Show Disk Usage of Files and Directories
The du command (short for disk usage) displays the file space usage in a directory. It tracks space occupied by files and directories. The like the df command, du is used with the -h option to display output in a human-readable format.
$ du -h
Show Linux Directory File Disk Usage

9. What are an Inode and PID?
An inode is a file structure that stores metadata for files in Linux. The metadata includes file size, permissions needed to access the file, user and group ID, creation timestamp, and the path to the file.
An inode number is a unique number or integer given to each file on a Linux system.
$ ls -li ravi.txt
1594567 -rwxrwxr-x 1 tecmint tecmint 0 Oct 28 10:58 ravi.txt
1594567 is the inode number and the -i flag shows the inode of the ravi.txt file.
A PID (Process ID) is a unique ID given to each running process on a Linux system. We can use the pidof command to find the process ID of any running program.
$ pidof firefox

10. What are Daemons?
Daemons are service processes that run in the background without any user interaction. They provide the functionality to other processes and handle periodic requests and forward them to appropriate applications for execution.

11. What are Process States in Linux?
In Linux, a process is an instance of a running program or service. There are four process states. At any given time, a process will be in any of the following states:
Ready: The process has already been created and is ready to run.
Running: The process is alive or being executed.
Stopped: The process finished running and was terminated by the operating system.
Wait: The process is waiting for some user input.
Zombie: The process has been terminated, but the information still exists in the process table.
To check the Linux process state use the ps command as shown.
$ ps a
Check Linux Process States
The STAT column shows the running state of the process.

12. What is GUI?
GUI is an acronym for Graphical User Interface. These are the graphical elements of a Linux operating system which include windows, icons, menus, buttons, taskbars, and much more.
The GUI makes it easier to interact with the system and is mostly preferred by beginners or novices who are not adept at working on the CLI.

13. What is CLI?
CLI is an acronym for Command Line Interface. This is an interface that allows users to type commands on a shell provided by the terminal. The CLI is mostly used by experienced Linux users or system administrators and engineers.
The CLI is the preferred mode of administering the system since it consumes fewer system resources, unlike the GUI which has a high resource overhead.

14. What is the Root Account?
This is the most privileged account on the Linux system. It allows you full control of the Linux system. You can do virtually anything you want including upgrading the system, installing and uninstalling software packages, creating and removing users, configuring services, and much more.
In most Linux distributions, you will be required to create a root account during installation.

15. What is Open Source Software?
The characteristic of software being open source implies that you view its source code, modify it and redistribute it to other users without license restrictions. Other users would then be in a position to make further changes including debugging and rectifying errors in the source code.
In effect, open-source software becomes widely used and hence benefits everyone.

Recent Posts
Learn Devops

Become a Devops Engineer in 3 months