Nếu bạn không cần các gói python cho tất cả người dùng thì bạn có thể cài đặt chúng trong nhà của bạn như thế này:
pip install --user packagename
Cài đặt trong nhà của bạn sẽ không xung đột với người quản lý gói.
Theo mặc định pip install --usersẽ cài đặt trong thư mục "trang web người dùng" của bạn. Thông thường đó là một cái gì đó như : /home/lesmana/.local/lib/python3.6/site-packages.
Lệnh sau sẽ in, trong số những người khác, vị trí "trang web người dùng" của bạn:
python -m site
Để tùy chỉnh vị trí cài đặt:
PYTHONUSERBASE=$HOME/some/dir pip install --user packagename
cái này sẽ cài đặt mọi thứ bên dưới $HOME/some/dir
chạy:
PYTHONUSERBASE=$HOME/some/dir $HOME/some/dir/bin/progname
Xem hướng dẫn sử dụng pip để biết thêm thông tin.
Nếu bạn muốn gói python cho tất cả người dùng thì nơi tốt nhất để cài đặt nó là /opt. ví dụ như thế này:
PYTHONUSERBASE=/opt/packagedir pip install packagename
(lưu ý thiếu --user)
và để chạy, như trên:
PYTHONUSERBASE=/opt/packagedir /opt/packagedir/bin/progname
Giải thích nền: /optthường được thừa nhận bởi các bản phân phối gnu / linux là thư mục nơi người dùng cục bộ hoặc quản trị viên hệ thống có thể cài đặt nội dung của riêng mình. nói cách khác: trình quản lý gói phân phối thường không chạm vào /opt. điều này ít nhiều được tiêu chuẩn hóa trong Tiêu chuẩn phân cấp hệ thống tập tin
Để tạo sự thoải mái cho người dùng, bạn vẫn sẽ muốn viết một tập lệnh bao bọc và đặt nó vào /binhoặc /usr/bin. Điều này vẫn có nguy cơ va chạm với trình quản lý gói phân phối nhưng ít nhất nó chỉ là một tệp script bao bọc. Vì vậy, thiệt hại có thể được thực hiện là tối thiểu. Bạn có thể đặt tên cho tập lệnh bao bọc giống như local-foohoặc custom-foođể giảm thiểu rủi ro va chạm với trình quản lý gói phân phối.
Ngoài ra, bạn có thể sửa đổi PATHđể bao gồm /opt/binvà đặt tập lệnh trình bao bọc của bạn ở đó. Nhưng điều này một lần nữa yêu cầu bạn sửa đổi một (hoặc một số) tệp hệ thống PATHđược xác định một lần nữa có thể bị ghi đè bởi trình quản lý gói phân phối.
Tóm lại: nếu bạn muốn cài đặt cho tất cả người dùng thì hãy thực hiện /opt. Nơi bạn đặt tập lệnh bao bọc cho thoải mái là một cuộc gọi phán xét.
Thông tin thêm về /optvà Tiêu chuẩn phân cấp hệ thống tập tin: