Root is the username, or the account, which by default has access to all commands and files in Linux or other operating systems of the Unix type. It is also known as root account, root user and superuser.
What is root or superuser in Unix-like systems
The root privileges are the powers that the root account has in the system. The root account is the most privileged of the system and has absolute power over it, that is, full access to all files and commands. Among the root powers are the
The system of permissions in the operating systems type Unix is configured by default to avoid the access of normal users to critical parts of the system, and to files and directories belonging to other users. This is because it is very easy to damage a Unix-like system with administrator access. However, an important principle of Unix-like operating systems is the provision of maximum flexibility to configure the system, and therefore, the root user is fully empowered.
Unix-like systems assume that the system administrator knows exactly what they are doing and that only that individual will use the root account. Therefore, there is practically no safety net for the root user in the case of a careless error, such as damaging or removing a critical system file, which could make the whole system not work.
The fact that all processes initiated by the root user have root privileges, add to the danger of routinely using the system as a root, because even the most used and tested application programs contain numerous programming errors, an expert attacker You can often find and exploit that error to gain control of a system when the program runs with administrator privileges instead of using an ordinary user account, with its very limited privileges.
A fundamental means of preventing users from directly damaging Unix-like systems or increasing the vulnerability of such systems to damage by others is to avoid the use of the root account, except when absolutely necessary, even by expert system administrators and experience. That is, instead of routinely logging into the system as root, administrators must log in with their administrator account and then use the su command. This will provide administrator privileges only as needed and without requiring a new login.
When to use root
Tasks that require root privileges include moving files or directories inside or outside of system directories, copying files to system directories, granting or revoking user privileges, some system repairs, and installing some application programs. By default, it is not necessary for the root to be able to read most of the configuration files and documentation
In general, root privileges are required to install the software in RPM package format, due to the need to write to the system directories. However, if an application program is being compiled from the source code, it can usually be configured to run from the user’s home directory. Root privileges are not necessary for an ordinary user to compile and install software in their home directory. For security reasons, you should avoid compiling software as root.
In order to use the superuser account, the first step is to enable it and assign it a password, to do this open a terminal and type the following command :
sudo passwd root
With this, you can now use the root user privileges, both through the su command and directly starting the session as the root user
With this end, our special article on what is a root user, remember that you can leave a comment if you have something to add. You can also share the post on social networks so you can help more users who need it.