2016-10-10 32 views
6

Tôi không thể cài đặt các gói Django cơ bản trên Ubuntu. Tôi vừa xóa virtualenv và làm lại nó. pip3install = pip3 install -r requirements.txt"PermissionError: [Errno 13] Quyền bị từ chối: '/usr/lib/python3.5/site-packages'" cài đặt Django

[mything] [email protected]:~/projects/mything (master) 
$ cat requirements.txt 
Django==1.10.1 
django-filter 
djangorestframework 
psycopg2 
twilio 
ipdb 
ipython 


[mything] [email protected]:~/projects/mything (master) 
$ pip3install 
Collecting Django==1.10.1 (from -r requirements.txt (line 1)) 
    Using cached Django-1.10.1-py2.py3-none-any.whl 
Collecting django-filter (from -r requirements.txt (line 2)) 
    Using cached django_filter-0.15.2-py2.py3-none-any.whl 
Requirement already satisfied (use --upgrade to upgrade): djangorestframework in /home/cchilders/.local/lib/python3.5/site-packages (from -r requirements.txt (line 3)) 
Requirement already satisfied (use --upgrade to upgrade): psycopg2 in /usr/lib/python3/dist-packages (from -r requirements.txt (line 4)) 
Collecting twilio (from -r requirements.txt (line 5)) 
Requirement already satisfied (use --upgrade to upgrade): ipdb in /home/cchilders/.local/lib/python3.5/site-packages (from -r requirements.txt (line 6)) 
Requirement already satisfied (use --upgrade to upgrade): ipython in /home/cchilders/.local/lib/python3.5/site-packages (from -r requirements.txt (line 7)) 
Collecting pysocks; python_version == "3.5" (from twilio->-r requirements.txt (line 5)) 
Requirement already satisfied (use --upgrade to upgrade): six in /home/cchilders/.local/lib/python3.5/site-packages (from twilio->-r requirements.txt (line 5)) 
Collecting httplib2>=0.7 (from twilio->-r requirements.txt (line 5)) 
Requirement already satisfied (use --upgrade to upgrade): pytz in /usr/lib/python3/dist-packages (from twilio->-r requirements.txt (line 5)) 
Requirement already satisfied (use --upgrade to upgrade): setuptools in /home/cchilders/.local/lib/python3.5/site-packages (from ipdb->-r requirements.txt (line 6)) 
Requirement already satisfied (use --upgrade to upgrade): prompt-toolkit<2.0.0,>=1.0.3 in /home/cchilders/.local/lib/python3.5/site-packages (from ipython->-r requirements.txt (line 7)) 
Requirement already satisfied (use --upgrade to upgrade): pickleshare in /home/cchilders/.local/lib/python3.5/site-packages (from ipython->-r requirements.txt (line 7)) 
Requirement already satisfied (use --upgrade to upgrade): decorator in /home/cchilders/.local/lib/python3.5/site-packages (from ipython->-r requirements.txt (line 7)) 
Requirement already satisfied (use --upgrade to upgrade): simplegeneric>0.8 in /home/cchilders/.local/lib/python3.5/site-packages (from ipython->-r requirements.txt (line 7)) 
Requirement already satisfied (use --upgrade to upgrade): traitlets>=4.2 in /home/cchilders/.local/lib/python3.5/site-packages (from ipython->-r requirements.txt (line 7)) 
Requirement already satisfied (use --upgrade to upgrade): pygments in /home/cchilders/.local/lib/python3.5/site-packages (from ipython->-r requirements.txt (line 7)) 
Requirement already satisfied (use --upgrade to upgrade): pexpect; sys_platform != "win32" in /home/cchilders/.local/lib/python3.5/site-packages (from ipython->-r requirements.txt (line 7)) 
Requirement already satisfied (use --upgrade to upgrade): wcwidth in /home/cchilders/.local/lib/python3.5/site-packages (from prompt-toolkit<2.0.0,>=1.0.3->ipython->-r requirements.txt (line 7)) 
Requirement already satisfied (use --upgrade to upgrade): ipython-genutils in /home/cchilders/.local/lib/python3.5/site-packages (from traitlets>=4.2->ipython->-r requirements.txt (line 7)) 
Requirement already satisfied (use --upgrade to upgrade): ptyprocess>=0.5 in /home/cchilders/.local/lib/python3.5/site-packages (from pexpect; sys_platform != "win32"->ipython->-r requirements.txt (line 7)) 
Installing collected packages: Django, django-filter, pysocks, httplib2, twilio 
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' 

Các mything ở bên trái là một virtualenv hoạt động (tôi chỉ làm lại)

+1

Bạn phải có đặc quyền gốc khi cài đặt mô-đun vào hệ thống python. Sử dụng 'sudo'. – MisterMiyagi

+1

mà vẫn còn sai. Tôi chỉ cố gắng để cài đặt vào virtualenv và tôi đã không bao giờ phải sử dụng sudo để có được gói virtualenv để làm việc. – codyc4321

+1

kiểm tra quyền và quyền của người dùng trong thư mục đó. –

Trả lời

9

Bạn có thể vô tình tái virtualenv với python2 thèm đưa đường dẫn đến Python3 thông dịch viên vì vậy khi bạn thực hiện PIP3 nó đề cập hệ thống Python3.

Đảm bảo rằng bạn sử dụng đúng Python trong virtualenv và cũng đảm bảo rằng bạn tạo virtualenv với pip (có tùy chọn mặc định nhưng chúng tôi không biết cách bạn tạo môi trường ảo).

+0

chính xác. bị kiểm tra hai lần, TY – codyc4321

+0

yep đã cảm ơn – codyc4321

3

Chỉ để mở rộng câu trả lời bằng @valentjedi, dưới đây là cách tôi đã nhận được sự cố cấp quyền của mình được khắc phục mà không cần sử dụng sudo.

Install

  • Đảm bảo bạn có virtualenv cài đặt here

  • này là tùy chọn, nhưng tôi cũng sử dụng virtualenvwrapper sử dụng workon lệnh here, nếu không bạn có thể chỉ source bin/activate từ virtualenv

Tạo virtualenv

Bạn không muốn cài đặt các thư viện dự án của bạn với sudo vì nó sẽ cài đặt hệ thống thư viện của bạn rộng (mà sẽ chạy vào các vấn đề khi bạn có nhiều hơn một dự án). Thay vào đó, hãy sử dụng virtualenv như sau:

$mkvirtualenv myenv --python=python3.5 
$workon myenv 
$pip3 install -r requirements.txt 

Điều này giúp bạn thiết lập bằng cách tạo virtualenv 'myenv' và chỉ định bạn đang sử dụng mã vạch nào. Sau đó, bạn kích hoạt môi trường và có thể cài đặt tệp yêu cầu của mình.

Các vấn đề liên quan