¿Quién es Root? ¿Por qué existe la raíz?


¿Alguna vez se ha preguntado por qué hay una cuenta especial llamada root en Linux? ¿Conoce cuáles son las mejores prácticas recomendadas para usar esta cuenta? ¿Conoce los escenarios en los que se debe utilizar y en los que no? Si respondió “sí” a una o más de estas preguntas, siga leyendo.

En esta publicación, proporcionaremos una referencia con información sobre la cuenta raíz que querrá tener a mano.

¿Qué es root?

Para empezar, tengamos en cuenta que la jerarquía de directorios en los sistemas operativos tipo Unix se ha diseñado como una estructura en forma de árbol. El punto de partida es un directorio especial representado por una barra inclinada (/) con todos los demás directorios que inicialmente se ramifican desde él. Dado que esto es análogo a un árbol real, / se llama directorio raíz.

En la siguiente imagen podemos ver el resultado de:

$ tree -d / | less

que ilustra la analogía entre / y la raíz de un árbol.

Aunque las razones detrás del nombre de la cuenta de root no están del todo claras, es probable que se deba al hecho de que root es la única cuenta que tiene permisos de escritura dentro de /.

Además, root tiene acceso a todos los archivos y comandos en cualquier sistema operativo similar a Unix y, a menudo, se lo denomina superusuario por esa razón.

En una nota al margen, el directorio raíz (/) no debe confundirse con /root , que es el directorio de inicio del usuario raíz. De hecho, /root es un subdirectorio de /.

Obtener acceso a los permisos de root

Cuando hablamos de privilegios de root (o superusuario), nos referimos a los permisos que dicha cuenta tiene en el sistema. Estos privilegios incluyen (pero no se limitan a) la capacidad de modificar el sistema y otorgar a otros usuarios ciertos permisos de acceso a sus recursos.

El uso imprudente de este poder puede conducir a la corrupción del sistema en el mejor de los casos y al fracaso total en el peor. Es por eso que las siguientes pautas se aceptan como mejores prácticas a la hora de acceder a los privilegios de la cuenta root:

Inicialmente, use la cuenta raíz para ejecutar visudo. Use ese comando para editar/etc/sudoers para otorgar los privilegios mínimos de superusuario que necesita una cuenta determinada (por ejemplo, supervisor).

Esto puede incluir, por ejemplo, la capacidad de modificar (usermod) cuentas de usuario, y nada más.

En el futuro, inicie sesión como supervisor y use sudo para realizar tareas de administración de usuarios. Notará que intentar realizar otras tareas que requieren permisos de superusuario (eliminar paquetes, por ejemplo) debería fallar.

Repita los dos pasos anteriores siempre que sea necesario y, una vez hecho, use el comando de salida para regresar a su cuenta sin privilegios de inmediato.

En este punto, debe preguntarse: ¿Hay otras tareas que aparecen periódicamente que necesitan privilegios de superusuario? Si es así, conceda los permisos necesarios en/etc/sudoers ya sea para una cuenta o grupo determinado, y continúe evitando el uso de la cuenta raíz en la medida de lo posible.

Esta publicación puede servir como referencia para el uso adecuado de la cuenta raíz en un sistema operativo similar a Unix. ¡Siéntete libre de agregarlo a tus marcadores y regresar tantas veces como quieras!

Como siempre, envíenos una nota utilizando el formulario de comentarios a continuación si tiene alguna pregunta o sugerencia sobre este artículo. ¡Esperamos con interés escuchar de usted!