- Root es el superusuario de Linux con control total sobre el sistema, por encima de cualquier restricción de permisos habitual.
- Lo habitual es no iniciar sesión como root, sino usar sudo o su para obtener privilegios elevados de forma controlada y temporal.
- Un uso descuidado de root puede borrar el sistema, instalar malware o romper la seguridad, por lo que conviene minimizar su uso y revisar comandos.
- Configurar correctamente sudoers, bloquear la cuenta root y seguir buenas prácticas permite administrar Linux con seguridad y trazabilidad.

Si vienes de Windows (consulta cuentas de usuario en Windows) y aterrizas en Linux, el famoso usuario root puede sonar a chino, pero en realidad es la pieza clave que separa un sistema estable y seguro de un auténtico desastre. Root es el “jefe absoluto” del sistema, el que puede instalar, borrar, romper y arreglar prácticamente cualquier cosa sin pedir permiso.
Entender bien para qué sirve root en Linux, cómo se relaciona con sudo y su, y cuáles son sus riesgos es imprescindible para administrar tu equipo, ya sea un portátil doméstico o un servidor en producción. En este artículo vas a ver, con bastante detalle y en un lenguaje cercano, qué es root, cómo se usa en distintas distribuciones (especialmente en Ubuntu), qué peligros tiene y qué buenas prácticas conviene seguir para no dejar tu máquina inservible.
Qué es el usuario root en Linux y qué lo hace especial
En cualquier sistema GNU/Linux existe un usuario con privilegios totales llamado root, también conocido como superusuario. Este usuario tiene el UID 0 y no está sometido a las restricciones habituales de permisos de archivos y procesos: puede leer, modificar o eliminar cualquier fichero, instalar o desinstalar software, cambiar la configuración del sistema, gestionar otros usuarios y tocar servicios críticos.
Si lo comparas con Windows, root sería el equivalente al Administrador, pero con aún más poder, porque en Linux el modelo de permisos está más afinado y la separación entre usuarios y servicios es mucho más estricta. Mientras un usuario normal está limitado en lo que puede hacer en rutas como /etc, /usr, /var o /boot, root entra en todas partes sin pedir permiso.
Además de los usuarios normales y de root, Linux define “usuarios del sistema” o cuentas de servicio (daemons) con permisos muy reducidos que se utilizan para ejecutar servidores web, bases de datos u otros demonios. Esto permite que, aunque un servicio sea comprometido, el atacante no tenga automáticamente acceso total al equipo… salvo que consiga elevar privilegios a root.
Por defecto, un usuario estándar no puede instalar programas del sistema, modificar archivos de configuración globales ni crear directorios en zonas sensibles. Para hacer cualquiera de estas tareas necesitará elevar privilegios usando herramientas como sudo o su, que son precisamente los mecanismos habituales para “invocar” al superusuario de forma controlada.
En muchas distribuciones modernas, especialmente en Ubuntu y derivadas, el inicio de sesión directo como root viene deshabilitado. En lugar de eso, durante la instalación se crea un usuario normal que pertenece al grupo de administradores (por ejemplo, sudo o admin) y se usa el comando sudo para ejecutar acciones administrativas pidiendo tu propia contraseña, no la de root.
Diferencia entre usuarios normales, root y el grupo sudo
Linux implementa un sistema de permisos basado en usuarios y grupos. A grandes rasgos, podemos distinguir tres grandes tipos de cuentas que te vas a encontrar en el día a día al hablar de root:
Usuarios normales: son las cuentas de las personas que usan el sistema. Tienen un home propio, pueden instalar programas en su directorio, ejecutar aplicaciones de escritorio, guardar documentos, etc. Sin embargo, no pueden realizar tareas administrativas de sistema como instalar paquetes globales, modificar configuraciones en /etc o gestionar otros usuarios, salvo que usen sudo o su.
Usuario root: es el superusuario con control absoluto. No está sujeto a restricciones de permisos salvo las que imponga el propio kernel o mecanismos de seguridad avanzados. Puede, literalmente, “hacer y deshacer a su antojo”, desde borrar el directorio raíz hasta cambiar permisos de cualquier archivo. Precisamente por eso se desaconseja usarlo para tareas cotidianas.
Usuarios administradores (sudoers): son usuarios normales que pertenecen a un grupo especial (habitualmente sudo o admin) y tienen permiso para ejecutar comandos como root usando sudo. Por ejemplo, para añadir un usuario al grupo sudo puedes usar algo así como:sudo usermod -aG sudo nombreusuario
Una vez que un usuario forma parte del grupo sudo, puede ejecutar comandos privilegiados anteponiendo sudo. El sistema le pedirá su contraseña (no la de root), y si es correcta ejecutará el comando con privilegios de superusuario. Esto da un buen equilibrio entre seguridad y comodidad.
Qué es root en la práctica y para qué se utiliza
Más allá de la teoría, el usuario root es la identidad que el sistema usa para realizar cualquier cambio profundo. Tú puedes seguir trabajando siempre con tu usuario normal y recurrir a root solo cuando haga falta. Vamos a ver algunos de los usos principales.
Instalar o desinstalar software del sistema. Los gestores de paquetes (como apt, dnf o pacman) necesitan escribir en rutas protegidas, por lo que siempre se ejecutan con permisos de root. Un ejemplo típico sería:sudo apt install vlc
Editar archivos de configuración del sistema. La mayoría de servicios y programas de sistema se configuran a través de archivos de texto en directorios como /etc. Para abrirlos con un editor y poder guardarlos necesitas privilegios elevados. Por ejemplo:sudo nano /etc/hosts
Cambiar la contraseña de root u otros usuarios. Operaciones como modificar la clave del propio superusuario, o la de otra cuenta, implican tocar la base de datos de contraseñas del sistema. Un comando típico sería:sudo passwd root
Ejecutar comandos potencialmente peligrosos. Herramientas como rm (borrar), chmod (cambiar permisos), chown (cambiar propietario) o mkfs (formatear) pueden hacer mucho daño si se usan mal. El sistema exige permisos de root para operaciones que afecten a ficheros o dispositivos críticos para evitar que un usuario normal destruya el sistema por error.
Gestionar el arranque, apagado y reinicio de la máquina. Comandos como reboot, poweroff o el manejo avanzado de systemctl sobre servicios del sistema también requieren privilegios de superusuario. Para más información sobre systemd y su gestión de servicios puedes consultar la documentación especializada. De lo contrario, cualquier usuario podría reiniciar un servidor en producción cuando le viniera en gana.
En la práctica, si algo te falla con un error de “permiso denegado” en Linux, es bastante probable que necesites ejecutarlo con permisos de root usando sudo o cambiando temporalmente al superusuario con su.
Comandos sudo y su: cuándo usar cada uno
Una vez tienes claro que root es el “dueño” del sistema, toca entender cómo conseguir esos privilegios desde tu usuario normal. Las dos herramientas clásicas para esto son sudo y su, que no hacen exactamente lo mismo aunque mucha gente las mezcle.
sudo (“superuser do”) sirve para ejecutar un único comando con permisos de otro usuario, normalmente root. No cambias de sesión, no te conviertes en root “para todo”; solo ese comando concreto se ejecuta con privilegios elevados. Por ejemplo:sudo apt install gparted
Cada vez que uses sudo el sistema te pedirá tu contraseña (si no la has introducido recientemente). Después de unos minutos de inactividad, el “ticket” de sudo caduca y tendrás que volver a autenticarse, lo que añade una capa de seguridad importante.
su (“switch user”) cambia tu identidad de usuario dentro de la misma sesión. Si lo usas sin argumentos, pasarás a ser root (te pedirá la contraseña de root) y todos los comandos posteriores se ejecutarán con esos privilegios hasta que salgas con exit. Por ejemplo:suContraseña:whoami # devuelve 'root'
También puedes usar su nombreusuario para pasar de un usuario a otro, siempre que conozcas la contraseña de la cuenta de destino. Para que el entorno cambie completamente al del nuevo usuario (variables, home, etc.) se recomienda usar su - o su - nombreusuario.
En general, se considera más seguro y recomendable usar sudo para comandos puntuales y recurrir a su solo cuando de verdad necesites una sesión de root prolongada (por ejemplo, en tareas de recuperación o mantenimiento complejo).
Particularidades de root en Ubuntu y distribuciones derivadas
Ubuntu y muchas distros basadas en ella siguen una filosofía de seguridad bastante clara: el usuario root existe, pero viene bloqueado para el inicio de sesión directo. Esto significa que tras una instalación estándar no puedes iniciar sesión como root ni en la terminal ni en el entorno gráfico usando una contraseña, porque no tiene ninguna asignada.
En lugar de eso, Ubuntu apuesta por el uso intensivo de sudo. Durante el proceso de instalación se crea un usuario administrador que pertenece al grupo sudo, y a partir de ahí cualquier tarea administrativa se hace con:sudo comando
Si necesitas una shell de root “completa” en Ubuntu, tienes varias opciones seguras:sudo -i # abre una sesión de login de rootsudo su - # cambia a root con entorno de login
Ambos métodos te dejan como root en esa terminal hasta que salgas con exit. Verás que el prompt suele cambiar y termina en # en lugar de $, señal clásica de que estás como superusuario. Es importante no perder de vista este detalle para no ejecutar comandos peligrosos donde no toca.
Aunque no es lo recomendable, puedes habilitar al usuario root en Ubuntu asignándole una contraseña con:sudo passwd root
Tras introducir y confirmar la nueva contraseña, root quedará “desbloqueado” y será posible, por ejemplo, usar su sin sudo previo o incluso permitir inicio de sesión directo en TTY o por SSH (algo muy desaconsejable en servidores expuestos).
Riesgos reales de usar root sin cuidado
Trabajar como root sin saber exactamente lo que estás haciendo es como conducir un camión en marcha atrás por una autopista: puede salir bien, pero como te despistes un segundo la liada es épica. Linux está diseñado para ser bastante seguro por defecto, pero en cuanto elevas privilegios desaparecen muchas protecciones.
El primer gran riesgo es borrar o corromper el sistema de archivos por accidente. Comandos como:rm -rf /rm -rf /*
o incluso construcciones más sutiles como:rm -rf "$directorio"/*
pueden destrozar todo el sistema en cuestión de segundos si se ejecutan como root y la ruta no es la que crees. A veces basta una variable vacía, una barra mal puesta o un tabulador fuera de sitio para que un comando aparentemente inocente sea catastrófico.
El segundo gran peligro es instalar software malicioso con privilegios totales. Descargar y ejecutar scripts de Internet como root sin mirar el código es dar la llave de tu casa a un desconocido. Un script malicioso puede instalar rootkits, keyloggers o puertas traseras, modificar el kernel, espiar todo lo que haces y mantenerse oculto durante mucho tiempo.
También es relativamente fácil romper la seguridad del sistema tocando permisos de archivos críticos. Por ejemplo, si ejecutas algo como:chmod 000 /etc -R
o cambias los permisos de /boot o de /etc/passwd sin saber lo que haces, puedes dejar la máquina inarrancable o hacer imposible la autenticación de usuarios. En muchos casos la única solución pasa por recurrir a un LiveCD o incluso reinstalar.
Desde el punto de vista de seguridad, operar siempre como root convierte esa cuenta en un “punto único de fallo”. Si un atacante logra acceso a root (por fuerza bruta, phishing, malware, etc.), tiene mando total: puede cifrar discos, robar datos, unirte a una botnet o usar tu servidor para atacar a terceros. Para mitigar riesgos te interesa profundizar en técnicas de hardening con SELinux y otros mecanismos de protección.
Además, el uso intensivo de root dificulta la trazabilidad. Cuando se ejecutan comandos con sudo, el sistema registra quién los ha lanzado y cuándo, mientras que si todo se hace como root no queda claro qué persona está detrás de cada acción, lo que complica auditorías y diagnósticos de problemas.
Mostrar asteriscos al escribir la contraseña de sudo
Por defecto, cuando introduces la contraseña de sudo en muchas distribuciones (como Ubuntu) no ves ni puntos ni asteriscos. Esto se pensó como medida de seguridad para que nadie pueda deducir la longitud de tu clave solo mirando la pantalla, pero en la práctica resulta bastante incómodo: tecleas y parece que no pasa nada.
Desde hace tiempo, sudo permite activar un comportamiento llamado pwfeedback, que muestra un asterisco por cada carácter que escribes. No revela la contraseña, pero te confirma que el teclado está respondiendo y te ayuda a detectar errores de pulsación.
Para activarlo, hay que editar la configuración de sudo con la herramienta segura visudo, que valida la sintaxis antes de guardar para evitar que te quedes sin sudo por un fallo tonto. Los pasos serían:
1. Abrir la configuración de sudo:sudo visudo
2. Añadir la línea:Defaults pwfeedback
3. Guardar y salir del editor
A partir de ese momento, cada vez que introduzcas la contraseña de sudo aparecerán asteriscos. Si en algún momento quieres volver al comportamiento original, basta con eliminar esa línea usando de nuevo visudo.
Desactivar o bloquear la cuenta root
En entornos donde varias personas tienen acceso al mismo equipo, la contraseña de root puede acabar rodando más de la cuenta. Si demasiada gente conoce esa clave, es cuestión de tiempo que alguien haga (o sufra) un desastre. Una solución muy razonable es desactivar la cuenta root y trabajar solo con sudo.
Cuando bloqueas la cuenta root, impides iniciar sesión directamente como ese usuario y también evitas que se use su para pasar a root con su contraseña. Eso sí, los usuarios autorizados seguirán pudiendo utilizar sudo para ejecutar órdenes privilegiadas.
Para bloquear la cuenta root en muchas distros basta con ejecutar:sudo passwd -l root
Este comando “congela” la contraseña de root para que no pueda utilizarse. Si más adelante necesitas reactivarla, tendrás que establecer una nueva contraseña con algo como:sudo passwd root
Recuperar o cambiar la contraseña de root si la has perdido
Si has olvidado la contraseña de root o has bloqueado la cuenta y necesitas recuperarla, no todo está perdido. Linux ofrece varias vías para restablecerla, normalmente arrancando el sistema en un modo especial o usando un LiveCD.
Una opción muy habitual es hacerlo desde el GRUB, usando el modo de recuperación. En muchas distribuciones tienes una entrada tipo “Advanced options” donde puedes elegir un “Recovery mode”. Al seleccionarlo, se carga un entorno limitado con opciones de rescate.
Si eliges la opción de obtener una consola de root en modo recuperación, el flujo estándar suele ser:
1. Montar el sistema de archivos con permisos de escritura:mount -o rw,remount /
2. Establecer una nueva contraseña para root:passwd root
3. Sincronizar datos y reiniciar para aplicar los cambios:syncreboot
La otra gran vía es arrancar con un LiveCD o LiveUSB de una distribución Linux (por ejemplo, Ubuntu en modo “Probar sin instalar”) y trabajar sobre el sistema instalado desde fuera.
En un escenario típico con LiveCD, los pasos serían:
1. Abrir una terminal y obtener una shell de root temporal:sudo su
2. Identificar la partición que contiene tu sistema Linux con algo tipo:fdisk -l
3. Montar esa partición en un directorio de trabajo (ejemplo usando /dev/sda1):mkdir /mnt/recovermount /dev/sda1 /mnt/recover
4. Cambiar la raíz del sistema al directorio montado con chroot:chroot /mnt/recover
5. Desde ahí, usar passwd root para definir una nueva contraseña y, tras salir y reiniciar, podrás volver a acceder con normalidad.
El archivo /etc/sudoers y cómo afinar los permisos de root
Uno de los puntos más potentes (y delicados) de la gestión de root es el archivo /etc/sudoers, donde se define quién puede usar sudo, desde dónde y para ejecutar qué comandos. Aquí es donde puedes personalizar al detalle el acceso a privilegios elevados.
Muy importante: nunca edites /etc/sudoers directamente con un editor cualquiera. Usa siempre:sudo visudo
porque esta herramienta comprueba la sintaxis antes de guardar. Un error en este archivo puede dejarte sin posibilidad de usar sudo, y con visudo minimizas ese riesgo.
El contenido típico de /etc/sudoers en un Ubuntu limpio incluye líneas similares a:root ALL=(ALL:ALL) ALL%sudo ALL=(ALL:ALL) ALL
La primera indica que el usuario root puede ejecutar cualquier comando en cualquier host como cualquier usuario y grupo. La segunda hace lo mismo pero para todos los usuarios del grupo sudo. De este modo, cualquiera en ese grupo tiene poder total vía sudo.
Para configuraciones más avanzadas, sudoers permite definir alias de usuarios, comandos y grupos de ejecución, por ejemplo:
User_Alias ADMINES = pepe, perico, andres
Cmnd_Alias POWER = /sbin/shutdown, /sbin/halt, /sbin/reboot, /sbin/restart
Runas_Alias WEB = www-data, apache
Con estas definiciones podrías, por ejemplo, dar a ADMINES permiso para apagar o reiniciar el sistema sin contraseña con una regla como:ADMINES ALL = NOPASSWD: POWER
Las etiquetas como NOPASSWD permiten ejecutar ciertos comandos con sudo sin tener que escribir la contraseña, algo muy útil en scripts automatizados, integraciones con otros sistemas o equipos personales donde eres el único usuario.
Como curiosidad, existe una opción llamada insults que, si la añades a las líneas Defaults, hace que sudo te “insulte” en inglés cada vez que te equivocas de contraseña. No mejora la seguridad, pero al menos te saca una sonrisa en mitad del trabajo.
Uso de root para gestionar archivos y permisos desde la terminal
En la práctica, gran parte del uso de root se concentra en la gestión de archivos y permisos mediante la terminal. Con privilegios de superusuario puedes moverte por todo el sistema de ficheros y modificar lo que necesites, siempre extremando las precauciones.
Algunos comandos básicos que se vuelven especialmente delicados como root son:
ls: lista archivos y directorios. Como root verás incluso ficheros que otros usuarios no pueden listar.
cp y mv: copiar y mover archivos o directorios. Con sudo puedes, por ejemplo, mover una fuente tipográfica desde Descargas hasta /usr/share/fonts/ para que esté disponible para todo el sistema.
rm: elimina archivos y carpetas. En combinación con -r y -f es extremadamente peligroso si lo usas como root sin revisar bien la ruta.
chmod y chown: cambian permisos y propietarios. Son esenciales para dejar accesibles archivos a determinados usuarios, pero mal usados pueden dejar el sistema inseguro o inservible.
Un ejemplo típico de uso de root para instalar una fuente del sistema sería:
sudo cp ~/Descargas/Underdog.ttf /usr/share/fonts/sudo chmod 644 /usr/share/fonts/Underdog.ttf
El modo 644 indica que el propietario (root) puede leer y escribir, mientras que el grupo y el resto de usuarios solo pueden leer, suficiente para que la fuente funcione pero sin permitir cambios accidentales.
Buenas prácticas al trabajar con root, sudo y su
Operar con privilegios de superusuario no es algo que deba hacerse a la ligera. Hay una serie de pautas que, si las interiorizas, te ahorrarán muchos sustos:
Minimiza el tiempo que pasas como root. Usa sudo comando siempre que puedas, en lugar de abrir una sesión de root persistente. Cuanto menos tiempo estés con todos los permisos, menos probabilidades hay de que metas la pata.
Evita a toda costa ejecutar scripts de fuentes dudosas con sudo. Si descargas un script de Internet y lo primero que ves es “ejecuta esto con sudo”, ábrelo con un editor y léelo de arriba a abajo. Si no entiendes lo que hace, no lo ejecutes.
Utiliza entornos de pruebas (máquinas virtuales, contenedores) para experimentar. Si vas a tocar configuraciones delicadas, probar comandos agresivos o scripts poco claros, hazlo primero en un sistema que puedas romper sin miedo. Puedes encontrar guías sobre virtualización segura en máquinas virtuales y contenedores.
Configura sudo de forma granular cuando haya varios administradores. No es lo mismo un usuario que solo necesita reiniciar un servicio que alguien que debe tener control total. Usa /etc/sudoers para limitar qué puede hacer cada uno.
Supervisa los registros de autenticación (/var/log/auth.log o journalctl) para ver quién está usando sudo, desde dónde y con qué comandos. Es una forma sencilla de detectar comportamientos extraños o abusos de privilegios.
No navegues por Internet, no abras adjuntos ni ejecutes aplicaciones de escritorio como root. Si una aplicación gráfica se ve comprometida mientras la ejecutas como superusuario, el atacante se lleva el premio gordo.
En definitiva, root en Linux es una herramienta potentísima que hay que tratar con mimo. Entender bien para qué sirve, cuándo usar sudo o su, cómo recuperar o bloquear la cuenta y cómo ajustar sudoers te permitirá administrar tu sistema con seguridad y confianza, aprovechando toda la flexibilidad de GNU/Linux sin jugarte el tipo cada vez que abres la terminal.
Tabla de Contenidos
- Qué es el usuario root en Linux y qué lo hace especial
- Diferencia entre usuarios normales, root y el grupo sudo
- Qué es root en la práctica y para qué se utiliza
- Comandos sudo y su: cuándo usar cada uno
- Particularidades de root en Ubuntu y distribuciones derivadas
- Riesgos reales de usar root sin cuidado
- Mostrar asteriscos al escribir la contraseña de sudo
- Desactivar o bloquear la cuenta root
- Recuperar o cambiar la contraseña de root si la has perdido
- El archivo /etc/sudoers y cómo afinar los permisos de root
- Uso de root para gestionar archivos y permisos desde la terminal
- Buenas prácticas al trabajar con root, sudo y su

