Qué es root en Linux, cómo funciona y cómo usarlo con seguridad

Última actualización: 09/03/2026
Autor: Isaac
  • Root es el superusuario de Linux, con control total sobre el sistema, frente a las cuentas normales con permisos limitados.
  • Sudo y su son las herramientas clave para obtener privilegios de root: sudo para comandos puntuales y su para cambiar de usuario.
  • La configuración en /etc/sudoers permite definir quién puede usar sudo, qué comandos puede ejecutar y si se pide o no contraseña.
  • Un uso imprudente de root puede dañar gravemente el sistema, por lo que conviene limitar su uso directo y apoyarse en sudo.

root en linux

Si acabas de aterrizar en GNU/Linux desde Windows o macOS, una de las primeras cosas que conviene entender es cómo funcionan los permisos y quién manda realmente en el sistema. Ese “jefe supremo” se llama root y, si no lo conoces bien, es fácil que metas la pata hasta el fondo con un solo comando.

La idea de fondo es sencilla: en Linux no todos los usuarios pueden hacer de todo. Hay cuentas normales con limitaciones y una cuenta especial con poderes absolutos. A lo largo de este artículo vamos a ver qué es exactamente el usuario root en Linux, para qué sirve, cómo usarlo con cabeza y qué riesgos tiene usarlo sin cuidado, además de revisar en detalle los comandos sudo y su, la gestión de contraseñas de root y algunos trucos prácticos.

Qué es root en Linux y tipos de usuarios

En cualquier sistema tipo Unix, incluido GNU/Linux, el usuario root es el superusuario que puede hacer y deshacer lo que quiera: leer, modificar o borrar cualquier archivo, instalar o quitar software, cambiar permisos, formatear discos o apagar el equipo cuando le venga en gana.

Para entender por qué existe root, conviene distinguir los tipos de cuentas que coexisten en un sistema Linux típico. A grandes rasgos, encontramos tres categorías: usuarios normales, el propio root y usuarios especiales de sistema usados por servicios y demonios.

Las cuentas de usuario normales están pensadas para el uso diario: navegar, programar, editar documentos, jugar… Tienen restringido el acceso a partes críticas del sistema, no pueden instalar paquetes globalmente ni escribir en directorios como /etc, /usr o /var sin elevar privilegios.

En el otro extremo está root, que equivaldría al administrador en Windows, pero con aún más libertad de acción. No hay casi nada vetado para este usuario: puede cambiar archivos de sistema, tocar el arranque, modificar permisos y propietarios de lo que quiera e incluso borrar todo el sistema de archivos con un solo comando mal tirado.

Entre medias existe una categoría menos visible: los llamados usuarios de sistema o de servicio (daemon). Son cuentas sin sesión interactiva, con permisos muy acotados, que se usan para que servicios como servidores web, bases de datos o demonios de sistema funcionen de forma más segura.

Cómo funcionan los permisos y el grupo sudo

Por diseño, Linux se toma muy en serio la separación de privilegios: un usuario normal no puede modificar el sistema sin pedir permisos de forma explícita. Esto puede ser algo chocante si vienes de un sistema donde tu cuenta es siempre administradora.

Para que un usuario normal pueda ejecutar tareas de administración de vez en cuando, existe el grupo especial sudo. Cualquier cuenta que pertenezca a este grupo puede ejecutar comandos puntuales con privilegios de root utilizando la orden sudo.

Agregar un usuario al grupo adecuado es muy sencillo: basta con lanzar algo como sudo usermod -aG sudo nombre_usuario. A partir de ahí, ese usuario se convierte en “sudoer” y podrá elevar permisos cuando lo necesite.

El comportamiento esperado es que, al ejecutar por ejemplo sudo apt-get update, el sistema pida la contraseña de ese usuario (no la de root) y, si es correcta y está autorizado, ejecute el comando con privilegios de administrador.

Esta mecánica permite que no sea necesario iniciar sesión como root para tareas de mantenimiento. De hecho, en muchas distribuciones modernas es la forma recomendada e incluso la única soportada por defecto para operar con privilegios elevados.

Qué es root y para qué se utiliza en la práctica

Cuando hablamos del usuario root, hablamos de la cuenta que concentra todos los privilegios administrativos sobre el sistema. Es indispensable para muchas tareas, pero su uso directo debe limitarse porque un error con esta cuenta no suele tener vuelta atrás.

Una buena noticia es que casi nunca necesitas iniciar sesión directa como root: puedes pedir privilegios temporales usando sudo o su, ejecutar lo que te haga falta y volver a trabajar como usuario normal.

En el día a día, los usos más habituales de root (directa o indirectamente) son, entre otros, los siguientes:

  • Instalación y eliminación de software: cualquier gestor de paquetes (apt, dnf, pacman, etc.) necesita permisos de superusuario para instalar, actualizar o borrar programas a nivel de sistema.
  • Edición de archivos de configuración críticos: ficheros como /etc/hosts, /etc/fstab, /etc/passwd o los de configuración de servicios sólo se pueden modificar con privilegios elevados.
  • Cambio de contraseñas de cuentas del sistema, incluida la de root: comandos como passwd root requieren permisos especiales para actualizar la base de contraseñas.
  • Ejecución de comandos potencialmente destructivos: herramientas como rm, chmod, chown o mkfs pueden destrozar el sistema si se usan mal; por eso exigen privilegios para operar sobre rutas delicadas.
  • Acciones de gestión del sistema: reiniciar, apagar, gestionar servicios, montar y desmontar particiones, administrar usuarios y grupos… todo ello pasa por permisos de superusuario.
  Kagi anuncia el desarrollo de su navegador Orion para Linux

Siempre que alguna acción te devuelva un mensaje de “permiso denegado”, hay muchas probabilidades de que, ejecutando el mismo comando con sudo o como root, la operación se realice sin problemas… otra cosa es que deba hacerse o que sea seguro.

Comando sudo: ejecutar como root sin dejar de ser tú

El comando sudo es, hoy en día, la forma recomendada de ejecutar un comando concreto con privilegios de superusuario manteniendo tu identidad de usuario normal. Es como pedir prestado el poder de root durante unos segundos.

Su uso básico consiste en anteponer la palabra sudo al comando que quieras lanzar con permisos elevados. Por ejemplo, si quieres instalar un programa desde los repositorios en una distribución basada en Debian, escribirías algo como sudo apt install gparted.

Al hacerlo, el sistema te pedirá tu propia contraseña de usuario (si perteneces al grupo de sudoers). No se te solicitará la clave de root, lo que es una ventaja importante desde el punto de vista de seguridad, porque nadie necesita conocer la contraseña maestra del sistema.

Una vez que introduces la contraseña y se valida, se ejecuta sólo ese comando con permisos de root y luego vuelves a tener las mismas restricciones de siempre. Es decir, no pasas a ser root; simplemente ejecutas una orden “en su nombre”.

Además, sudo incorpora un “tiempo de gracia”: durante unos minutos después de usarlo correctamente, suele permitir lanzar más comandos con sudo sin volver a pedir la contraseña. Es cómodo, aunque hay quien lo considera un pequeño agujero de seguridad porque, si alguien toma el control de tu sesión en ese intervalo, podría ejecutar órdenes peligrosas sin necesitar tu clave.

Comando su: cambiar de usuario (y convertirse en root)

El comando su viene de “substitute user” y está pensado para cambiar de una cuenta a otra desde la terminal sin cerrar la sesión actual. Lo que hace es abrir un nuevo shell como otro usuario.

Si ejecutas simplemente su sin argumentos, el sistema asume por defecto que quieres convertirte en root. En ese caso pedirá la contraseña de la cuenta root y, si es correcta, pasarás a tener un prompt de superusuario.

También puedes usarlo para cambiar a otro usuario cualquiera escribiendo su nombre_usuario. En ese caso se te pedirá la contraseña de ese usuario concreto, y si la introduces bien, tendrás su identidad, pero seguirás con el entorno del usuario anterior a menos que pases ciertas opciones.

Para “entrar como si hubieras iniciado sesión gráficamente” con ese usuario (es decir, para cargar su entorno, variables, directorio home, etc.), es recomendable usar su – o su – nombre_usuario. La opción (equivalente a -l o –login) fuerza un inicio de sesión de tipo login shell.

Mientras estás bajo su, todos los comandos que ejecutes se harán con la identidad del usuario al que has cambiado. Para volver a tu cuenta original basta con escribir exit, lo que te devolverá al shell anterior.

Obtener una sesión root y compararla con sudo

Aunque no es la forma más segura, hay situaciones en las que puede ser útil trabajar un rato con un shell de root, por ejemplo en tareas muy intensivas de administración o recuperación.

En distribuciones donde la cuenta root está habilitada, basta con ejecutar su – y proporcionar la contraseña de root. A partir de ese momento, verás que el prompt suele cambiar y se reemplaza el símbolo $ por el símbolo #, una pista visual clara de que estás jugando en modo “todo vale”.

En sistemas tipo Ubuntu, donde root viene bloqueado por defecto, es más habitual usar sudo -i. Este comando te proporciona un shell de login como root usando tu propia contraseña (si estás autorizado en sudoers), sin tener que acordarte de una clave distinta.

La diferencia fundamental con sudo “normal” es que sudo -i te deja en una sesión root persistente: puedes encadenar comandos sin anteponer sudo cada vez, hasta que escribas exit y vuelvas a tu usuario.

En términos de seguridad, es más razonable usar sudo para comandos concretos y reservar el shell de root sólo para casos muy puntuales. Cuanto más tiempo pases como root, más fácil es que lances algo peligroso por descuido.

El archivo /etc/sudoers y la configuración avanzada de sudo

Detrás de la magia de sudo está el fichero /etc/sudoers, donde se define quién puede usar sudo, desde dónde y para ejecutar qué órdenes. Es un archivo delicado: editarlo mal puede dejarte sin capacidad de elevar privilegios.

Por eso se recomienda encarecidamente utilizar el comando visudo para modificarlo. Esta herramienta abre /etc/sudoers en tu editor preferido y valida la sintaxis antes de guardar. Si has cometido un error, te avisará y evitará que se deje un archivo roto.

  Cómo configurar software de apagado automático con UPS y NUT

En un sistema típico, verás líneas como root ALL=(ALL:ALL) ALL, que indican que root puede ejecutar cualquier comando, como cualquier usuario y grupo, desde cualquier host. También suelen aparecer entradas para grupos especiales como %sudo o %admin, que habilitan a sus miembros para usar sudo.

El archivo admite alias de usuarios, comandos y contextos de ejecución, algo muy útil para no tener que escribir listas enormes cada vez. Por ejemplo, puedes agrupar varios usuarios en un User_Alias y varios comandos peligrosos en un Cmnd_Alias y luego definir reglas del estilo “este grupo de personas puede lanzar este conjunto de órdenes”.

Hay también etiquetas como NOPASSWD o NOEXEC que sirven para ajustar el comportamiento de sudo. La más conocida es NOPASSWD, que permite ejecutar ciertos comandos con sudo sin que se pida contraseña, útil en automatizaciones o en scripts donde no hay nadie para teclear la clave.

Permitir comandos como root sin pedir contraseña

En algunos escenarios muy concretos puede interesar permitir que un usuario ejecute uno o varios comandos con privilegios de root sin introducir contraseña. Por ejemplo: apagar el equipo con un botón, recargar un módulo del kernel desde un script o ejecutar una tarea programada.

Para ello se suele crear un alias de comandos en /etc/sudoers y se acompaña con la etiqueta NOPASSWD:. Un ejemplo clásico sería algo del estilo miusuario ALL=NOPASSWD: /sbin/shutdown, /sbin/reboot, que autoriza a ese usuario a apagar o reiniciar el sistema sin que sudo le pida la clave.

También puedes definir alias de usuarios (User_Alias) y alias de comandos (Cmnd_Alias) para simplificar: por ejemplo, agrupar varios usuarios de administración en GRUPO y varias órdenes de gestión de energía en POWER, y luego establecer GRUPO ALL = NOPASSWD: POWER.

La clave está en no volverse loco dando NOPASSWD a todo. Lo ideal es limitarlo a las órdenes estrictamente necesarias y, si es posible, a ciertos hosts o redes concretas mediante alias de host.

Una curiosidad simpática: añadiendo la opción insults a la línea de Defaults en sudoers, puedes hacer que sudo te dedique un “insulto educado” en inglés cuando te equivocas al introducir la contraseña. No mejora la seguridad, pero desde luego hace la experiencia más entretenida.

Riesgos de usar root sin cuidado

Tener a mano el superusuario es imprescindible, pero usar root a la ligera es la forma más rápida de cargarse el sistema. Linux está pensado para ser robusto, pero si tú mismo lo ejecutas todo como root, borras archivos a ciegas o cambias permisos sin saber, no hay milagros.

Uno de los peligros más conocidos es la eliminación accidental de partes críticas del sistema de archivos. Comandos como rm -rf / o rm -rf /* son letales si se lanzan como root: en cuestión de segundos puedes quedarte sin sistema operativo.

A veces el problema ni siquiera es un comando obviamente peligroso, sino el efecto de una variable mal expandida. Por ejemplo, si escribes algo como rm -rf «$directorio»/* y la variable está vacía por un bug en tu script, puedes terminar borrando un lugar que no tenías previsto.

Otro riesgo serio es ejecutar como root scripts o instaladores descargados de Internet sin revisar. Si el contenido es malicioso, un atacante puede instalar rootkits, puertas traseras o spyware con acceso total, enterrarse en el sistema y ocultarse a nivel de kernel.

También hay que tener cuidado al modificar permisos en rutas delicadas con chmod o chown. Un comando tipo chmod 000 /etc/ o un cambio masivo en /boot o en el cargador de arranque (GRUB) puede dejar el sistema en un estado en el que ni siquiera arranque, obligándote a tirar de medios de rescate.

Por estos motivos, siempre que trabajes con sudo, su o root es buena idea revisar dos veces el comando, comprobar la ruta con ls antes de usar rm, y si dudas, no ejecutar nada hasta estar seguro de lo que va a ocurrir.

Por qué muchas distros deshabilitan root por defecto

Distribuciones como Ubuntu y otras derivadas optan por bloquear la cuenta root desde el primer momento y delegar toda la administración en sudo. Es una decisión de diseño orientada a reducir riesgos, sobre todo para usuarios novatos.

Esto significa que, aunque root existe internamente, no puedes iniciar sesión con esa cuenta porque no tiene una contraseña válida. En su lugar, el usuario creado durante la instalación entra automáticamente en el grupo sudo.

Para la vida diaria esto no supone ningún problema: puedes instalar programas, actualizar el sistema o editar configuraciones usando sudo cuando haga falta. Así se evita que la gente se loguee como root y trabaje permanentemente con barra libre de permisos.

No obstante, si por algún motivo necesitas tener una contraseña de root, puedes habilitar la cuenta configurándole una clave con sudo passwd root. Desde ese momento, podrás cambiar a root con su o incluso iniciar sesión gráfica con esa cuenta (algo poco aconsejable).

Si más adelante prefieres volver al comportamiento seguro original, siempre puedes bloquear la cuenta otra vez con sudo passwd -dl root, lo que impedirá usarla directamente aunque sudo siga funcionando para los usuarios autorizados.

  Cómo desactivar la webcam y el micrófono desde BIOS/UEFI: opciones reales, riesgos y trucos

Desactivar temporalmente la cuenta root

En entornos donde hay varias personas usando la misma máquina, puede pasar que la contraseña de root acabe circulando de mano en mano, lo que abre la puerta a cambios no deseados o instalaciones de software sin control.

Una forma de mitigar esto es bloquear la cuenta root mediante sudo passwd -l root. Con este comando se inutiliza la contraseña de root y se impide iniciar sesión como root o hacer su a root, manteniendo operativo sudo para quienes estén en el grupo adecuado.

Cuando bloqueas root de esta forma, quien quiera realizar tareas administrativas deberá usar sudo con su propia clave de usuario, lo que deja mejor rastro y reduce la necesidad de compartir una contraseña maestra.

Si en algún momento necesitas volver a utilizar root con su contraseña, puedes simplemente establecer una nueva clave con sudo passwd root. Esto reactiva la cuenta y te permite volver a trabajar con ella como antes.

Este enfoque es especialmente útil en equipos compartidos, aulas o pequeños servidores donde no interesa que cualquiera pueda convertirse en root sin control, pero sí conviene mantener un mecanismo flexible de administración.

Recuperar u obtener la contraseña de root

Puede darse el caso de que hayas deshabilitado la cuenta root o simplemente no recuerdes su contraseña. Afortunadamente, la mayoría de distribuciones Linux ofrecen métodos de recuperación desde el propio gestor de arranque o con ayuda de un LiveCD.

Una vía habitual es aprovechar el menú de GRUB. Al arrancar el equipo, puedes entrar en las opciones avanzadas y seleccionar el modo Recovery Mode. Desde ahí, suele haber una entrada root que abre una consola de superusuario con el sistema montado en modo lectura.

Para poder cambiar la contraseña necesitarás remontar la raíz con permisos de escritura usando algo como mount -o rw,remount /. Después basta con lanzar passwd root, indicar una nueva clave y finalizar con sync y reboot para guardar cambios y reiniciar.

Si esta vía no funciona o prefieres otra opción, siempre puedes recurrir a un LiveCD o LiveUSB de cualquier distribución (por ejemplo, Ubuntu). Arrancas desde el medio, eliges la opción de “probar sin instalar” y abres una terminal.

En esa terminal, primero te conviertes en root temporalmente con sudo su. Luego usas fdisk -l para identificar la partición donde está instalado el Linux que quieres reparar (por ejemplo, /dev/sda1), y creas un punto de montaje tipo mkdir /mnt/recover seguido de mount /dev/sda1 /mnt/recover.

Después ejecutas chroot /mnt/recover para “entrar” en ese sistema como si fuera el tuyo y finalmente lanzas passwd root para establecer una nueva contraseña de superusuario. Al salir y reiniciar, el sistema arrancará con la clave recién configurada.

Gestión diaria con root: ejemplo de archivos, permisos y comandos básicos

Más allá de la pura teoría, el usuario root se nota sobre todo cuando trabajas en directorios de sistema y operaciones de mantenimiento. Si quieres, por ejemplo, mover una fuente descargada a un directorio global de fuentes, vas a necesitar esos privilegios.

Imagina que tienes un archivo llamado Underdog (en formato ZIP y también como carpeta) en tu carpeta de Descargas y quieres situarlo en /usr/share/fonts/. Como se trata de una ruta protegida, deberás usar sudo cp o sudo mv para copiar o mover estos archivos y carpetas al destino.

De la misma forma, para actualizar el sistema desde la terminal lanzarás algo como sudo apt update seguido de sudo apt upgrade en distros basadas en Debian. Sin sudo, el gestor de paquetes te devolverá errores de permisos al intentar abrir sus archivos de estado.

Cuando te mueves por rutas de sistema es muy útil dominar comandos como ls, cp, mv, rm, chmod o chown. ls te lista contenidos, cp y mv copian o mueven, rm elimina, chmod ajusta permisos numéricamente (por ejemplo, 644 para que el propietario pueda leer y escribir y el resto sólo leer) y chown cambia el propietario.

Operaciones como cambiar el propietario de un archivo a tu usuario normal con chown pueden ahorrarte recurrir constantemente a sudo. Lo típico es ejecutar algo como sudo chown debian:debian archivo para que a partir de ahí “debian” pueda manipular ese fichero sin subir privilegios.

En definitiva, entender bien qué es root, cómo interactúan sudo y su, cómo se configura /etc/sudoers y qué peligros conlleva abusar de los privilegios de superusuario te permitirá sacar todo el partido a Linux sin jugarte el sistema en cada comando. Usado con cabeza, el superusuario es una herramienta potentísima para administrar servidores y equipos personales; usado sin prudencia, es la forma más rápida de terminar reinstalando desde cero.

chroot
Artículo relacionado:
Guía completa para crear una jaula chroot en Linux: pasos, usos y consejos