2016-09-25 2 views
0

Warum benötigt Pymongo Sudo für die Installation? Seine docs erwähnen nichts über sudo ...Warum benötigt pymongo sudo, um pip zu installieren?

(myapp) cchilders:~/projects/app (master) 
$ sudo pip3 uninstall pymongo 
    Successfully uninstalled pymongo-3.3.0 
The directory '/home/cchilders/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. 


(myapp) cchilders:~/projects/app (master) 
$ pip3 install pymongo 
Collecting pymongo 
    Using cached pymongo-3.3.0-cp35-cp35m-manylinux1_x86_64.whl 
Installing collected packages: pymongo 
Exception: 
Traceback (most recent call last): 
    File "/home/cchilders/.local/lib/python3.5/site-packages/pip/basecommand.py", line 215, in main 
    status = self.run(options, args) 
    File "/home/cchilders/.local/lib/python3.5/site-packages/pip/commands/install.py", line 317, in run 
    prefix=options.prefix_path, 
    File "/home/cchilders/.local/lib/python3.5/site-packages/pip/req/req_set.py", line 742, in install 
    **kwargs 
    File "/home/cchilders/.local/lib/python3.5/site-packages/pip/req/req_install.py", line 831, in install 
    self.move_wheel_files(self.source_dir, root=root, prefix=prefix) 
    File "/home/cchilders/.local/lib/python3.5/site-packages/pip/req/req_install.py", line 1032, in move_wheel_files 
    isolated=self.isolated, 
    File "/home/cchilders/.local/lib/python3.5/site-packages/pip/wheel.py", line 346, in move_wheel_files 
    clobber(source, lib_dir, True) 
    File "/home/cchilders/.local/lib/python3.5/site-packages/pip/wheel.py", line 287, in clobber 
    ensure_dir(dest) # common for the 'include' path 
    File "/home/cchilders/.local/lib/python3.5/site-packages/pip/utils/__init__.py", line 83, in ensure_dir 
    os.makedirs(path) 
    File "/usr/lib/python3.5/os.py", line 241, in makedirs 
    mkdir(name, mode) 
PermissionError: [Errno 13] Permission denied: '/usr/lib/python3.5/site-packages' 

(myapp) cchilders:~/projects/app (master) 
$ sudo pip3 install pymongo 
The directory '/home/cchilders/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. 
The directory '/home/cchilders/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. 
Collecting pymongo 
    Downloading pymongo-3.3.0-cp35-cp35m-manylinux1_x86_64.whl (337kB) 
    100% |████████████████████████████████| 337kB 1.5MB/s 
Installing collected packages: pymongo 
Successfully installed pymongo-3.3.0 

perms sind gleich hier und andere:

drwxrwxr-x 6 cchilders cchilders 4096 Sep 24 19:42 myapp 
-rw-r--r-- 1 cchilders cchilders 96 Feb 23 2016 initialize 
drwxrwxr-x 6 cchilders cchilders 4096 Apr 21 16:19 knockoutjs_official_tutorial 
drwxrwxr-x 6 cchilders cchilders 4096 Apr 3 10:38 my_scripting_library 
drwxrwxr-x 8 cchilders cchilders 4096 Sep 15 03:41 neo4j_sandbox 

Danke

+3

Im Allgemeinen wird jedes Paket erfordert sudo in einem systemweiten Python-Bibliotheksverzeichnis installiert werden. Du kannst einen virtualenv benutzen, wenn du das nicht willst. – BrenBarn

+0

der virtualenv ist aktiv .. – codyc4321

+0

Frageformat wurde behoben – codyc4321

Antwort

1

Überprüfen Sie Ihre virtuelle Umgebung Eigentum. Wenn Sie keine Schreibberechtigung für diesen Pfad haben, benötigen Sie sudo

+0

ok, aber wie mache ich das? check perms des Pfades zu bin/python? – codyc4321

+0

@ codyc4321 überprüfen Sie Ihre virtuelle Umgebung. Das ist der Pfad, den Sie eingeben, wenn Sie eine virtuelle Umgebung erstellen. –

+0

der Hauptordner oder der Pip? Der Hauptordner und der Pip haben beide Schreibzugriff für Benutzercchilder – codyc4321

Verwandte Themen