lunes, 15 de noviembre de 2021

¡Se ha roto su! ¡Orden no encontrada!


 El otro día prepare un Debian nuevecito y no quería que el usuario que acababa de crear pudiera utilizar sudo. Tecleé su, me convertí en root, intenté instalar un paquetito con dpkg y... “orden no encontrada

 

En un principio pensé que la instalación estaba mal, no podía ser que dpkg no estuviera instalado. Pero luego lo que vi es que era un problema con su y como me había convertido en root. O, mejor dicho, que su ahora se utiliza de otra manera y yo no me había enterado.


En resumidas cuentas, podía convertirme en root utilizando su sin ningún tipo de problemas, como siempre lo había utilizado, pero parecía que un montón de comandos no estaban disponibles, entre ellos dpkg, ufw, adduser...

Parecia un error grave y me dieron las taquicardias. Pero no, no era siquiera un problema, es que yo no me había enterado de algo. Y si tú estás leyendo esto, tampoco te has enterado. Su ha cambiado el paquete que lo instala, y eso hace que ahora no se exporte el PATH como antes, con lo que todo lo que está en /sbin deja de estar disponible.

Por suerte, la solución es bien sencilla, en lugar de ejecutar su sin más, tienes que ejecutarlo como...

  • su -

Y de esta manera, si tendrás el PATH completo, con lo que esta vez sí estarán a mano los comandos que antes no se encontraban y no tienes que ir corriendo a urgencias.

¿Y si quieres que todo vuelva al pasado y su funcione como lo hacía antiguamente?

O bien le pides prestada su máquina del tiempo a Marty McFly o bien haces que el PATH se exporte siempre, por defecto. Para ello tienes que editar el fichero /etc/login.defs para añadirle una línea que diga...

ALWAYS_SET_PATH yes

Y ya tienes su funcionando de nuevo como cuando eras joven.

No hay comentarios:

Publicar un comentario

prekes sodui