Most Commonly Asked Questions in Linux Interviews


If you have already achieved your Linux certification and are looking forward to securing a Linux job, it pays a great deal to prepare for an interview that tests your knowledge of the ins and outs of Linux.

In this guide, we present to you some of the most commonly asked questions in Linux interviews and answers.

1. What is Linux?

Linux is a free and open-source operating system based on UNIX. It was first released in 1991 by Linux 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.

Grub Menu
Grub Menu

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
Check Linux Memory Utilization
Check Linux Memory Utilization

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
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
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

40982

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 is 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
Check the 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.

Linux With GUI
Linux With GUI

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.

Linux With CLI
Linux With CLI

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.

16. What are the Linux Directory Commands?

The following are the main Linux directory commands:

  • pwd – The command displays the present working directory or your current directory path.
  • ls – This command lists the contents of a directory.
  • cd – This lets you switch from one directory to another.
  • mkdir – The command creates a new empty directory.
  • rmdir – The command deletes or removes an empty directory.
  • rm – Removes one or multiple files. Used with -R option to remove a non-empty directory.
Linux Directory Commands
Linux Directory Commands

17. What is the Redirection Operator?

Redirection is the process of sending the output of the first command to another file. In addition, it’s also used to direct an output as an input to another process.

In Linux, redirection is achieved using either the ">" (greater-than symbol) or the "|" (pipe) operator which sends the standard output of one command to another command as standard input.

18. What are the Different Vim Modes?

The vim editor provides the following main modes:

  • Normal mode / Command mode – This is the default mode when you open a new file or an existing one. In this mode, you can run commands such as undo, redo, and paste.
  • Insert mode – This mode allows you to type in the text.
  • Visual mode – This mode lets you select text so that you can perform other tasks with it such as cop, cut or paste.

19. What is an Alias?

As the name suggests, aliases are like custom shortcuts used to represent a command (or set of commands) executed with or without custom options.

$ alias
List Linux Aliases
List Linux Aliases

20. How to List All Processes Running on a Linux?

To list all running processes on a Linux system, run the command:

# ps aux

The command lists all the currently running processes, including their PID (Process ID) numbers.

List Linux Running Processes
List Linux Running Processes

21. What is a Soft Link?

A soft link, also known as a symbolic link, is similar to a file shortcut on Windows operating system. It contains the path of the file and not its contents.

A soft link can be linked to either a file or a directory. If the original file is removed, the soft link breaks and is referred to as the hanging link. However, the removal of the soft itself doesn’t affect anything.

In addition, soft links can link across file systems.

22. What is a Hard Link?

A hard link is a file shortcut that links the actual contents of a file, unlike a soft link which only contains the file path. It’s the same size as the original file and shares the same inode number as the original file.

When the origins file is updated, the contents of the hard link also get updated. In addition, the hard link remains unaffected even if the original file is removed.

The drawback of a hard link is that it cannot be created across different file systems.

23. What are Hidden Files in Linux?

Hidden files are files that are preceded by a dot or period. They mostly contain configuration files that hold important data or settings. To view hidden files, use the ls command with the -la option.

$ ls -la
List Hidden Files in Linux
List Hidden Files in Linux

24. What are the Different Types of Permissions in Linux?

There are 3 distinct file permissions in Linux:

  • Read (r) – Allows users to read files or list a directory.
  • Write (w) – Allows the user to modify or edit files.
  • Execute (x) – Allows users to run the file.
Linux File Permissions
Linux File Permissions

25. How do Change the Permissions of a File or Directory?

The chmod command is the command that modifies the permissions of a file or directory.

It follows the syntax shown.

# chmod [OPTIONS] [permissions] file

For example. To assign octal permissions 755 (all permissions to the owner and read and write permissions only for the group members and everyone else) to a file called file1.txt, run the command.

# chmod 755 file1.txt

26. What is the Grep Command?

Grep is a command line tool for searching and matching text files or lines in a text file. It takes options and parameters which are used to manipulate or enhance the search output.

It takes the following syntax:

$ grep [options] pattern [files]

The following command counts the number of occurrences of the string ‘Unix‘ in file1.txt.

$ grep -c "Unix" file1.txt

27. How to Terminate a Running Process in Linux?

To terminate or kill a process, use the kill command followed by the PID of the process.

The ps command will help you to identify the PID of a process.

$ kill PID

To terminate an unresponsive process, pass the -9 option shown

$ kill -9 PID

To kill a process by name, use the killall command followed by the process name. For example, to terminate the Firefox process, run the command:

$ killall firefox

28. How to Run Multiple Commands in Single Command?

To run multiple commands one after the other in a single command, you can use either the semi-colon ';', double ampersand '&&', or '||' symbols.

  • X Y – This runs commands X and Y regardless of the success of X.
  • X && Y – This runs Y if and only if X runs successfully.
  • X || Y – This runs Y if and only if X failed.
Run Multiple Linux Commands
Run Multiple Linux Commands

29. Check How Long the Linux System Has Been Running?

To verify the uptime or how long a system has been running, simply run the uptime command as shown.

$ uptime

12:09:11 up  2:49,  2 users,  load average: 0.62, 0.97, 0.88

30. How to Check Linux System Information?

To check basic system information such as kernel name and version, hostname, and operating system, run the uname command using the -a option as shown.

$ uname -a

Linux tecmint 5.15.0-53-generic #59~20.04.1-Ubuntu SMP Thu Oct 20 15:10:22 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Conclusion

Admittedly, this is by no means a comprehensive list of all the interview questions that you are bound to face in the interview room. However, you are more likely to face these interview questions to test your basic understanding of the Linux system. All the best as you prepare for your interview.

Did we miss any important Linux interview questions? What do you think about these questions? If you have any interview questions do share them in the comments below.

Jaspreet Singh Ghuman

Jaspreet Singh Ghuman

Jassweb.com/

Passionate Professional Blogger, Freelancer, WordPress Enthusiast, Digital Marketer, Web Developer, Server Operator, Networking Expert. Empowering online presence with diverse skills.

jassweb logo

Jassweb always keeps its services up-to-date with the latest trends in the market, providing its customers all over the world with high-end and easily extensible internet, intranet, and extranet products.

Contact
San Vito Al Tagliamento 33078
Pordenone Italy
Item added to cart.
0 items - 0.00
Open chat
Scan the code
Hello 👋
Can we help you?