[truco] sudo no encuentra el PATH al usar apt o aptitude

Desde finales de verano, con cada actualización diaria de sid obtenía un error de apt o aptitude (ambos fallaban por igual), diciendo que no podía encontrar el PATH correcto.

dpkg: aviso: `ldconfig' no se ha encontrado en el PATH o no es ejecutable.
dpkg: aviso: `start-stop-daemon' no se ha encontrado en el PATH o no es ejecutable.
dpkg: error: 2 expected programs not found in PATH or not executable.
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin.
E: Sub-process /usr/bin/dpkg returned an error code (2)
Un paquete no se pudo instalar. Intentado recuperarse:
dpkg: aviso: `ldconfig' no se ha encontrado en el PATH o no es ejecutable.
dpkg: aviso: `start-stop-daemon' no se ha encontrado en el PATH o no es ejecutable.
dpkg: error: 2 expected programs not found in PATH or not executable.
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin.

Una comprobación rápida me decía que las rutas de la variable sí estaban bien fijadas en el usuario root y, de hecho, la misma operación, comando por comando, funcionaba bien en el momento en que iniciaba sesión como superusuario. Así que era cosa de sudo.

Como muchos, espero, tengo un alias creado para actualizar el equipo de forma rápida e indolora (la mayoría de las veces :)), que utiliza sudo para evitar iniciar sesión.

[email protected]:~$ alias uf
alias uf='sudo aptitude update && sudo aptitude full-upgrade && sudo apt-get clean'

Para evitar el error del PATH, hay que especificar cuales son las rutas adecuadas a emplear con el programa. En otras palabras, hay que añadir la siguiente definición:

Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

al fichero /etc/sudoers. Hecho esto, se acabaron los avisos, los inicios de sesión y demás engorros.

3 ideas sobre “[truco] sudo no encuentra el PATH al usar apt o aptitude”

Los comentarios están cerrados.