Root Shell ve pip pero sudo pip "comando no encontrado"


12

He instalado Python 2.7.8 a través de makey make instally luego a través de pip get-pip . Tengo que tener en cuenta que trabajo detrás de un proxy que he configurado a través de

  • http_proxy
  • ftp_proxy
  • https_proxy

en

  • mi usuario ~/.zshrc
  • raíz /root/.basrc

ahora puedo correr pip

  • en mi cuenta de usuario
  • en cuenta raíz

pero no puedo ejecutarlo a través del shell de mi usuario usando sudo

sudo pip
sudo: pip: command not found

¿Que esta mal aquí?

Respuestas:


18

Eso se debe a que PATHes diferente cuando se ejecuta consudo . Intenta comparar:

which pip
env

vs.

sudo which pip
sudo env

Una solución segura es crear un enlace simbólico pipen /usr/local/bino incluso /usr/bin. Si instala piputilizando un administrador de paquetes, lo hará automáticamente en varias (¿la mayoría?) Distribuciones.


66
gracias, alias sudo='sudo env PATH=$PATH'resolvió el problema.
Patryk

Hay problemas de seguridad con eso: ¡no desea configurar esto a ciegas en todos sus entornos!
l0b0

77
No estoy seguro de si fue súper claro en esta respuesta, pero la solución es de hecho unln -s /usr/local/bin/<stuff> /usr/bin/<stuff>
JulienD
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.