¿Qué significa el error 'User is not in the sudoers file'?
Cuando ejecutas un comando precedido de sudo en distribuciones como Ubuntu, Debian, Arch o CentOS, el sistema consulta el archivo de configuración /etc/sudoers para verificar si tu cuenta tiene autorización de superusuario. Si tu nombre de usuario no figura en la lista ni pertenece a los grupos administrativos correspondientes, la terminal mostrará la advertencia: [usuario] is not in the sudoers file. This incident will be reported.
Causas principales de este fallo en Linux
Existen diversos motivos por los que un usuario pierde o nunca recibe acceso administrativo:
- Creación reciente de un usuario sin asignarle los grupos
sudoowheel. - Instalación limpia de Debian donde se definió una contraseña de
rooty no se configuró sudo por defecto. - Modificaciones erróneas o sintaxis corrupta dentro del archivo de seguridad
/etc/sudoers.
Método 1: Agregar el usuario al grupo administrativo mediante la cuenta Root
La forma más rápida y estándar de solucionar este conflicto requiere acceder temporalmente como superusuario directo:
- Abre la terminal y cambia a la cuenta root ejecutando:
su - - Introduce la contraseña de root cuando se te solicite en pantalla.
- Si utilizas Debian, Ubuntu o derivados, añade tu usuario al grupo sudo con el siguiente comando:
usermod -aG sudo tu_usuario - Si utilizas CentOS, RHEL, AlmaLinux o Fedora, el grupo administrativo suele ser wheel:
usermod -aG wheel tu_usuario - Cierra la sesión de root con
exity reinicia tu sesión de usuario para aplicar los cambios en los grupos.
Método 2: Modificar el archivo /etc/sudoers mediante visudo
Si tu sistema no utiliza grupos convencionales o prefieres otorgar permisos específicos a una cuenta concreta, debes editar el archivo de configuración de forma segura:
- Inicia sesión como root usando
su -en la terminal. - Ejecuta el editor seguro del sistema escribiendo:
visudo(nunca edites este archivo con nano o vi ordinarios directamente para evitar bloqueos del sistema por errores de sintaxis). - Desplázate hacia abajo hasta encontrar la sección que contiene
root ALL=(ALL:ALL) ALL. - Justo debajo, añade una nueva línea con la siguiente estructura:
tu_usuario ALL=(ALL:ALL) ALL - Guarda los cambios (en nano suele ser
Ctrl + OyCtrl + X, o en vi:wq). - Prueba que la configuración sea correcta ejecutando un comando de prueba con tu usuario habitual:
sudo apt updateosudo systemctl status.
Método 3: Acceder desde el Modo de Recuperación (Recovery Mode) si olvidaste la clave Root
Si no tienes la contraseña de root configurada ni acceso a otra cuenta con privilegios, puedes solucionarlo desde el menú de arranque GRUB:
- Reinicia tu ordenador o servidor y mantén pulsada la tecla
ShiftoEscpara visualizar el menú GRUB. - Selecciona las Opciones avanzadas para Ubuntu/Debian y elige la entrada que termine en
(recovery mode). - En el menú emergente, selecciona la opción
root - Drop to root shell prompt. - Monta el sistema de archivos con permisos de escritura ejecutando:
mount -o remount,rw / - Añade tu usuario al grupo correspondiente:
usermod -aG sudo tu_usuario - Reinicia el equipo normalmente tecleando
rebooty tu usuario ya tendrá permisos sudo habilitados.