Tôi đã thử Arch Linux gần đây và vì tôi là một lập trình viên Python muốn cài đặt request
gói. Để làm như vậy tôi cần cài đặt pip
trình quản lý gói Python bằng cách gọi
$ sudo easy_install pip
Tiếp theo tôi đã cài đặt gói yêu cầu với
$ sudo pip3 install requests
Nếu bây giờ tôi khởi động Python và nhập gói yêu cầu thì nội dung gói bị thiếu hoàn toàn. Thông thường nên có một loạt các lớp và chức năng.
Python 3.5.1 (default, Mar 3 2016, 09:29:07)
[GCC 5.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests
>>> dir(requests)
['__doc__', '__loader__', '__name__', '__package__', '__path__', '__spec__']
Vì vậy, tôi đã xem /usr/lib/python3.5/site-packages
thư mục chứa các gói Python đã cài đặt và phát hiện ra rằng requests
thư mục đó không có quyền đọc cho mọi người.
$ ls /usr/lib/python3.5/site-packages
drwxr-x--- 4 root root 4096 Mar 1 17:04 requests
drwxr-x--- 2 root root 4096 Mar 1 17:04 requests-2.13.0.dist-info
drwxr-xr-x 5 root root 4096 Apr 14 2016 setuptools
drwxr-xr-x 2 root root 4096 Apr 11 2016 setuptools-20.7.0-py3.5.egg-info
drwxr-xr-x 2 root root 4096 Oct 11 2015 six-1.10.
Có cách nào để cài đặt các gói Python mới trong Arch với các đặc quyền phù hợp không? Tôi đã sử dụng Debian trước đây và đã trải qua quy trình tương tự để cài đặt gói Python và chưa bao giờ phát hiện ra vấn đề này.
Có,
—
MrLeeh
sudo pacman -S python-requests
hoạt động nhưng chỉ dành cho Python2. Tôi cũng đã thử pip3 install
mà không có sudo nhưng ở đó tôi gặp lỗi.
python2-request nên là gói cho python2. Có vẻ như python2 là một phụ thuộc vào arch, nhưng không phụ thuộc vào debian. Nếu đó là một tùy chọn, hãy xóa pip3 và cài đặt lại với:
—
doriclazar
sudo pacman -S python-pip
và sau đó chạypip3 install requests
Tôi vừa thử cài đặt python-pip với
—
MrLeeh
sudo pacman -S python-pip
. Tôi đã làm nó trên một máy ảo và xóa sạch nó trước khi tôi làm như vậy. Tuy nhiên, pip3 install requests
kết quả hiện tại trong Distribution not found
Lỗi : pkg_resources.DistributionNotFound: The 'pip==9.0.1' distribution was not found and is required by the application
. Khi tôi sử dụng cũng vậy sudo pip3 install requests
. Chuyện lạ.
Tôi đã phải cập nhật các gói của tôi với
—
MrLeeh
pacman -Syyu
. Ngoài ra, tôi cần phải thiết lập quyền viết thủ công cho người dùng của mình để /usr/lib/python3.6/site-packages
có thể cài đặt pip. Không nó hoạt động. Nhưng bây giờ mọi người dùng đều có thể sử dụng cài đặt pip :( Trên cài đặt Debian chỉ có thể được thực hiện bằng sudo nhưng mọi người dùng đều có thể sử dụng các gói. Vì vậy, tôi tự hỏi mình có gì khác biệt ở đây.
sudo pacman -S python-requests
hoặc với pip3: Không nênpip3 install requests
chạy pip với root. Nếu bạn chạysudo python3
ngay bây giờ, bạn sẽ có thể nhập các gói đã cài đặt vớisudo pip3 install
,