In this article, we’ve included 5th set of 10 basic Linux Interview Questions and detailed answers that will help candidates prepare for the Linux interview and get the best job in the IT industry.
These Linux interview questions and answers will be useful for both freshers and experienced professionals at any level.
Q.1) What is a root user in Linux
The root user (aka superuser) is the most privileged user on a Unix and Linux like operating systems, which is similar to an administrator in Windows.
It’s a special user account in Linux used for system administration and has access to all commands and files on a Linux system.
The root user can do many things such as read and write any files on the system, perform operations as any user, change system configuration, formatting and mounting disk, starting/stopping services, install and remove software, and upgrade the operating system.
id uid=0(root) gid=0(root) groups=0(root)
What is the value of root UID
UID 0 (zero) is reserved for the root user on Linux and Unix like operating system.
What is default umask value for root user
The default umask value for the root user is 022.
Q.2) What is normal user in Linux
Normal users are highly restricted users created by the root or another user with sudo privileges. It has its own home directory where the user can make any changes and each user has a numeric user identifier called UID.
Usually, a normal user account is intended for a specific limited tasks or routine tasks. It can only perform permitted tasks and can only access those authorized files and services.
What is default umask value for non-root user
The default umask value for the non-root user is 002.
How to check the UID limit for normal users in Linux
For normal user account, the UID will be automatically selected from the ‘/etc/login.defs’ file depending on the ‘UID_MIN’ and ‘UID_MAX’ values. To check the UID_MIN and UID_MAX values on your Linux system, run:
grep -E '^UID_MIN|^UID_MAX' /etc/login.defs UID_MIN 1000 UID_MAX 60000
Q.3) What is system user in Linux
Typically system users are created when installing the operating system (OS) and new packages on the system, and these accounts are used by services to run processes and execute functions.
For instance, the Apache user will be created when installing the httpd package on the system. Similarly, all system users are created for different purposes when installing different packages and operating system.
How to check the UID limit for system users in Linux
System users will be created with no aging information, the UID will be automatically selected from the /etc/login.defs file depending on the SYS_UID_MIN (100) and SYS_UID_MAX (499) values.
grep -E '^SYS_UID_MIN|^SYS_UID_MAX' /etc/login.defs SYS_UID_MIN 100 SYS_UID_MAX 499
Q.4) What is sudo command in Linux
sudo stands for “super user do”, it’s one of the most important commands in Linux that allow normal user to temporarily run other administrative commands or tasks with elevated privileges.
If you prefix “sudo” with any Linux command, it will run that command with elevated privileges.
sudo access can be configured for users using the ‘/etc/sudoers’ file.
Enabling sudo access for a user, will accurately track the user activity and records everything in the message log (/var/log/message).
Q.5) What is UID in Linux
UID stands for ‘user identifier’, which is a number assigned to each Linux user on the system.
This UID is used to identify the user to the system and to determine which system resources the user can access. This is why the user ID must be unique.
By default, Linux systems automatically assign UIDs and GIDs to new user accounts in numerical order according to the UID pattern reservation.
On a Linux system, you can find the stored UID and GID in the ‘/etc/passwd’ file.
cat /etc/passwd linuxgeek:x:1000:100:linuxgeek:/home/linuxgeek:/bin/bash 2daygeek:x:1001:101:2daygeek:/home/2daygeek:/bin/bash linuxfaq:x:1002:102:linuxfaq:/home/linuxfaq:/bin/bash linuxtechnews:x:1003:103:linuxtechnews:/home/linuxtechnews:/bin/bash
- The third field represents the UID and forth field represents the GID.
List of UIDs and their details:
- UID 0 (zero) is reserved for the root.
- UIDs 1–99 are reserved for other predefined accounts.
- UID 100–500 are reserved by system for administrative and system accounts/groups.
- UID 1000–60000 are reserved for users account.
How can I identify my UID on Linux?
You can identify your UID on a Linux system by running the ‘id’ command without additional parameters.
id
Q.6) What is GID in Linux
GID stands for ‘group identifier’. Groups in Linux are defined by GIDs (group IDs), is a numeric value used to represent a specific group.
List of GIDs and their details:
- GID 0 (zero) is reserved for the root group.
- GID 1–99 are reserved for the system and application use.
- GID 100+ allocated for the user’s group.
Q.7) What is group on Linux
In Linux, a group is a collection of users. The main purpose of groups is to define a set of privileges to the members of the group.They all can perform the particular operations but not others.
There are two types of default groups available in Linux. Each user should have exactly one primary group and any number of secondary groups.
- Primary group
- Secondary group or Supplementary group
What is the primary group in Linux?
Primary group is a group that is automatically added to the user during user account creation. It’s typically the name of the user. The primary group is applied to the user when performing any actions such as creating new files (or directories), modifying files, or executing commands, etc,. The user primary group information is stored in the /etc/passwd file.
id uid=1000(linuxgeek) gid=100(users) groups=100(users),456(vboxusers)
100(users)
is the primary group of linuxgeek user.
What is the secondary group in Linux?
Secondary group is known as Supplementary group. This allows a group members to perform a specific action, and users can belong to up to 15 secondary groups. For example, if you want to allow some users to run the Apache (httpd) service command, it will fit exactly.
id uid=1000(linuxgeek) gid=100(users) groups=100(users),456(vboxusers)
456(vboxusers)
is the secondary group of linuxgeek user.
Q.8) What is the symbol used for a root user and non-root user shell?
If you don’t know the difference between $ and #. Here are the details.
- When you are signed in as, or acting as “root”, the shell prompt displays ‘#’ as the last character. The # hash is the default for root user.
- When you are logged into the system as a regular user, the shell prompt displays ‘$’ as the last character. The $ dollar sign is the default for regular users.
- In the C shell, the prompt ends with a percentage sign (%).
Q.9) What is umask in Linux
The umask shorthand for “user file-creation mode mask” is a four-digit octal number that Unix and Linux like operating system uses to determine the file permission for newly created files and directories.
The most common umask values are described in the below table:
umask | User Access | Group Access | Other |
---|---|---|---|
0000 | all | all | all |
0002 | all | all | read, execute |
0007 | all | all | none |
0022 | all | read, execute | read, execute |
0027 | all | read, execute | none |
0077 | all | none | none |
For file permission: You can simply subtract the umask from the base permissions to determine the final permission for file.
0666 - 0022 = 0644 0666 - default file-creation mode 0022 - umask value 0644 - final file permission value.
For directory permission:
0777 - 0022 = 0755 0777 - default file-creation mode 0022 - umask value 0755 - final directory permission value.
Q.10) What is Linux su command
su (short form of “substitute” or “switch user”) command allows us to run commands with the privileges of another user.
su is the simplest way of switching over to root account which requires root password to use the ‘su’ command in Linux.
Also, you can use it to switch to any user account. For instance, to switch ‘linuxfaq’ user, you’ll be prompted to enter linuxfaq’s password.
su - linuxfaq
If you wondering what is the difference between ‘su – user’ and ‘su user’, here are the details.
- su – user : It sets the target user environment with HOME, SHELL, USER, LOGNAME and PATH.
- su user: It preserves the current user environment.
Conclusion
In this guide, we’ve included the most frequently asked 5th set of 10 basic Linux Interview Questions and detailed answers for your reference purpose and we hope it will be very useful.
If you have any questions or feedback, feel free to comment below.