Cómo Solucionar el Error 'User is not in the sudoers file' en Linux de Forma Definitiva

Cómo Solucionar el Error 'User is not in the sudoers file' en Linux de Forma Definitiva
Anuncio relacionado

¿Qué significa el error 'User is not in the sudoers file'?

Cuando intentas ejecutar un comando precedido por sudo en distribuciones como Ubuntu, Debian o CentOS y tu usuario no posee privilegios administrativos, el sistema devuelve el mensaje: Username is not in the sudoers file. This incident will be reported. Este mecanismo de seguridad de Linux previene que cuentas estándar realicen cambios críticos en el sistema operativo.

Causas principales de este fallo

  • La cuenta fue creada sin asignarle el grupo de administración (sudo o wheel).
  • El archivo de configuración /etc/sudoers fue alterado o carece de la directiva para el usuario.
  • Se ha realizado una instalación limpia de Debian o Arch Linux donde el usuario principal no se añade automáticamente a los sudoers.

Método 1: Añadir el usuario al grupo sudo usando la cuenta Root

La solución más rápida y segura consiste en iniciar sesión como superusuario (root) e incluir tu usuario en el grupo correspondiente.

  1. Abre la terminal y cambia a la cuenta root ejecutando: su -
  2. Introduce la contraseña del usuario root cuando el sistema lo solicite.
  3. Si usas Ubuntu, Debian o derivados, añade tu usuario al grupo sudo con este comando: usermod -aG sudo tu_usuario
  4. Si estás en CentOS, Fedora, RHEL o AlmaLinux, el grupo administrativo suele llamarse wheel: usermod -aG wheel tu_usuario
  5. Cierra la sesión de root escribiendo exit y reinicia la sesión de tu usuario para aplicar los cambios de grupo.

Método 2: Modificar directamente el archivo /etc/sudoers con visudo

Si prefieres otorgar privilegios específicos sin depender de la membresía en grupos, puedes editar el archivo maestro de sudoers de forma segura.

  1. Accede como root en la terminal: su -
  2. Ejecuta el editor seguro de sudoers mediante el comando: visudo
  3. Desplázate hacia abajo hasta encontrar la sección que dice # User privilege specification o root ALL=(ALL:ALL) ALL.
  4. Justo debajo de esa línea, agrega la siguiente directiva reemplazando tu_usuario por tu nombre de usuario real: tu_usuario ALL=(ALL:ALL) ALL
  5. Guarda los cambios y sal del editor (en nano usa Ctrl + O, luego Enter y Ctrl + X).

Método 3: Acceder mediante el Modo de Recuperación (Recovery Mode)

Si no recuerdas la contraseña del usuario root o tu instalación no tiene root habilitado, puedes obtener una shell privilegiada desde el arranque.

  1. Reinicia tu ordenador o máquina virtual y mantén presionada la tecla Shift (o Esc en sistemas UEFI) para abrir el menú de GRUB.
  2. Selecciona Opciones avanzadas para Ubuntu/Debian y escoge la entrada que finalice en (recovery mode).
  3. En el menú de recuperación, selecciona la opción root - Drop to root shell prompt.
  4. Monta el sistema de archivos con permisos de escritura ejecutando: mount -o remount,rw /
  5. Añade tu usuario al grupo administrativo: usermod -aG sudo tu_usuario
  6. Reinicia el equipo normalmente con el comando: reboot
Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
Hardware

Cómo Solucionar el Error de Recurso de Hardware No Disponible en Windows

Aprende a diagnosticar y corregir el molesto error de recurso de hardware no disponible en tu PC con Windows. Sigue nuestra guía paso a paso.

Leer guía completa →
Linux

Cómo Solucionar el Error de Clave Pública en APT Update en Linux de Forma Definitiva

Soluciona rápidamente el molesto error de claves públicas y firmas digitales al ejecutar apt update en tu distribución Linux. Guía paso a paso definitiva.

Leer guía completa →
Desarrollo

Cómo Solucionar el Error 'Cannot Redeclare Function' en PHP de Forma Definitiva

Descubre por qué ocurre el error de redeclaración de funciones en PHP y cómo aplicar las mejores prácticas para solucionarlo definitivamente en tus proyectos.

Leer guía completa →