Amigos, descargué e instalé pip en mi Ubuntu. Luego intenté instalar paquetes como PLY y My xml, etc. Pero obtuve una secuencia de oraciones escritas en rojo.
Exception:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/pip/basecommand.py", line 209, in main
status = self.run(options, args)
File "/usr/local/lib/python2.7/dist-packages/pip/commands/install.py", line 317, in run
prefix=options.prefix_path,
File "/usr/local/lib/python2.7/dist-packages/pip/req/req_set.py", line 731, in install
**kwargs
File "/usr/local/lib/python2.7/dist-packages/pip/req/req_install.py", line 841, in install
self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
File "/usr/local/lib/python2.7/dist-packages/pip/req/req_install.py", line 1040, in move_wheel_files
isolated=self.isolated,
File "/usr/local/lib/python2.7/dist-packages/pip/wheel.py", line 343, in move_wheel_files
clobber(source, lib_dir, True)
File "/usr/local/lib/python2.7/dist-packages/pip/wheel.py", line 314, in clobber
ensure_dir(destdir)
File "/usr/local/lib/python2.7/dist-packages/pip/utils/__init__.py", line 82, in ensure_dir
os.makedirs(path)
File "/usr/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/usr/local/lib/python2.7/dist-packages/ply'
Usé pip install ply
para instalar.
¿Qué puedo hacer para instalar paquetes?
Respuesta aceptada:
pip
crea un directorio para cada paquete en /usr/local/lib/python2.7/dist-packages/
(reemplace 2.7
para otras versiones) para guardar todos los archivos necesarios, por lo que debe tener permisos suficientes para crear ese directorio.
En su caso, no tiene permisos suficientes para crear /usr/local/lib/python2.7/dist-packages/ply
directorio por eso pip
está fallando.
Para resolver esto, puedes usar sudo
:
sudo pip install ply
O mejor, puedes agregarte al staff
group como los directorios relevantes creados por pip
en /usr/local/lib/
es propiedad del usuario root
y grupo staff
(con setgid
).
Entonces puedes hacer:
sudo usermod -a -G staff username
Ahora cierre sesión y vuelva a iniciar sesión, ahora debería funcionar lo siguiente:
pip install ply