Introducción al Error de Permisos en Sudo
El comando sudo es fundamental en los sistemas operativos basados en Linux, ya que permite a los usuarios ejecutar tareas con privilegios administrativos o de root. Sin embargo, en ocasiones podemos encontrarnos con el frustrante error de 'permisos denegados' o advertencias sobre los permisos incorrectos del archivo /etc/sudoers o del binario sudo.
Este fallo suele ocurrir por una modificación accidental de los permisos mediante chmod o chown, lo que impide que el sistema confíe en el archivo de configuración de seguridad.
Causas Principales del Error
Las razones más comunes por las que el comando sudo deja de funcionar correctamente en distribuciones como Ubuntu, Debian o CentOS son:
- Permisos incorrectos en el archivo
/etc/sudoers(debe tener permisos estrictos 0440). - Propiedad incorrecta del binario
sudo(no pertenece al usuario root). - Problemas con los permisos del directorio
/usr/bin/sudo.
Método 1: Solucionar Permisos Incorrectos en /etc/sudoers usando el Modo de Recuperación
Si ya no puedes usar sudo desde tu usuario habitual, necesitarás acceder al modo de rescate o recuperación del sistema para corregir los permisos.
- Reinicia tu ordenador con Linux y mantén presionada la tecla
Shift(en BIOS) o presionaEscrepetidamente (en UEFI) para abrir el menú de GRUB. - Selecciona 'Opciones avanzadas para Ubuntu' (o tu distribución equivalente) y elige el kernel que incluye (recovery mode).
- En el menú de recuperación, selecciona la opción root para abrir una terminal con privilegios de superusuario directamente.
- Una vez en la terminal de root, ejecuta el siguiente comando para restaurar los permisos correctos del archivo sudoers:
chmod 0440 /etc/sudoers - Asegúrate de que la propiedad pertenezca a root:
chown root:root /etc/sudoers - Reinicia el sistema normalmente ejecutando
rebooty verifica que el problema se haya resuelto.
Método 2: Corregir Permisos del Binario Sudo
Si el error persiste o se debe a que el propio binario del comando ha perdido sus permisos SUID, debes seguir estos pasos:
- Accede nuevamente mediante el modo de recuperación o utilizando una Live USB de Linux.
- Monta la partición de tu sistema si es necesario y ejecuta el siguiente comando para restaurar el bit SUID del binario sudo:
chmod u+s /usr/bin/sudo - Verifica que los permisos del archivo sean exactamente
-rwsr-xr-xejecutando:ls -l /usr/bin/sudo - Reinicia tu equipo y comprueba que el comando vuelve a responder con normalidad ante cualquier tarea administrativa.