Introducción al Error sudo: command not found
Uno de los problemas más frustrantes al administrar un sistema operativo basado en Linux, especialmente tras instalaciones mínimas o en contenedores Docker, es encontrarse con el mensaje sudo: command not found al intentar ejecutar tareas con privilegios elevados. Este error indica que la utilidad sudo no está instalada en el sistema o que su ruta de ejecución no se encuentra registrada en la variable de entorno PATH del usuario actual.
Causas Principales del Problema
Las razones más comunes por las que ocurre este fallo son:
- La distribución de Linux instalada es una versión mínima (como Debian Minimal o Alpine) que omite paquetes de utilidades predeterminadas.
- Estás operando directamente como usuario estándar y el paquete nunca fue requerido ni configurado.
- La variable de entorno
PATHdel sistema no incluye los directorios binarios del sistema como/usr/sbino/sbin.
Método 1: Instalar Sudo como Usuario Root (Recomendado)
La solución más directa requiere acceder temporalmente al usuario root para instalar el paquete faltante. Sigue estos pasos:
- Cambia al usuario root ejecutando el comando:
su - - Introduce la contraseña del administrador cuando se te solicite.
- Actualiza la lista de paquetes según tu gestor. En distribuciones basadas en Debian o Ubuntu, escribe:
apt update && apt install sudo -y - Agrega tu usuario habitual al grupo sudo con el comando:
usermod -aG sudo tu_usuario - Sal de la sesión de root escribiendo
exity reinicia tu terminal.
Método 2: Configurar Correctamente la Variable PATH
Si ya tienes privilegios de root pero al usar un comando obtienes el error, es probable que la ruta de los binarios no esté en el PATH. Solucionalo así:
- Accede como root mediante
su -. - Edita el archivo de configuración del shell, por ejemplo,
nano ~/.bashrc. - Añade la siguiente línea al final del archivo:
export PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin - Guarda los cambios presionando
Ctrl + Oy sal conCtrl + X. - Aplica los cambios inmediatamente ejecutando:
source ~/.bashrc