Bí danh python thành python3
Bài viết này hướng dẫn cách cài đặt Python 3, 7, 8, 9 và 0 trên Red Hat Enterprise Linux 7. Sau khi làm theo các bước trong bài viết này, bạn sẽ có thể làm theo nhiều hướng dẫn và hướng dẫn về Python bằng RHEL. Ghi chú. Để cài đặt RHEL 8, hãy xem Python trên RHEL 8 Show
Sử dụng môi trường ảo Python là cách tốt nhất để cô lập các phụ thuộc dành riêng cho dự án và tạo môi trường có thể tái tạo. Các mẹo và Câu hỏi thường gặp khác để làm việc với Python và bộ sưu tập phần mềm trên RHEL 7 cũng được đề cập Có một số cách khác nhau để cài đặt Python 3 trên RHEL. Bài viết này sử dụng Bộ sưu tập phần mềm Red Hat vì chúng cung cấp cho bạn bản cài đặt Python hiện tại được Red Hat xây dựng và hỗ trợ. Trong quá trình phát triển, hỗ trợ có vẻ không quan trọng đối với bạn. Tuy nhiên, hỗ trợ là quan trọng đối với những người phải triển khai và vận hành các ứng dụng bạn viết. Để hiểu tại sao điều này lại quan trọng, hãy xem xét điều gì sẽ xảy ra khi ứng dụng của bạn đang trong quá trình sản xuất và lỗ hổng bảo mật quan trọng trong thư viện lõi (ví dụ SSL/TLS) được phát hiện. Loại kịch bản này là lý do tại sao nhiều doanh nghiệp sử dụng Red Hat Trăn 3. 6 được sử dụng trong bài viết này. Đó là bản phát hành ổn định, gần đây nhất khi nó được viết. Tuy nhiên, bạn sẽ có thể sử dụng các hướng dẫn này cho bất kỳ phiên bản Python nào trong Bộ sưu tập phần mềm Red Hat bao gồm 2. 7, 3. 4, 3. 5 và các bộ sưu tập trong tương lai như 3. 7 Trong bài viết này, các chủ đề sau được thảo luận
TL; DRDưới đây là các bước cơ bản để bạn có thể bắt đầu. Xem bên dưới để được giải thích và biết thêm chi tiết Cách cài đặt Python 3 trên RHEL
Sử dụng Python 3 trên RHEL
Nếu bạn bắt đầu một phiên mới, đây là các bước để sử dụng môi trường ảo của bạn
Tại sao nên sử dụng Bộ sưu tập phần mềm Red HatLợi ích của việc sử dụng Bộ sưu tập phần mềm Red Hat là bạn có thể cài đặt nhiều phiên bản Python cùng lúc với Python 2 cơ sở. 7 được vận chuyển cùng với RHEL 7. Bạn có thể dễ dàng chuyển đổi giữa các phiên bản với 1Ghi chú. Các gói ổn định mới nhất cho. Net Core, Go, Rust, PHP 7, Ruby 2. 5, GCC, Clang/LLVM, Nginx, MongoDB, MariaDB, PostgreSQL, v.v đều có thể cài đặt 0 dưới dạng bộ sưu tập phần mềm. Vì vậy, bạn nên dành thời gian để làm quen với các bộ sưu tập phần mềmSử dụng bộ sưu tập phần mềm yêu cầu thêm một bước vì bạn phải kích hoạt bộ sưu tập bạn muốn sử dụng. Việc kích hoạt chỉ cần thêm các đường dẫn cần thiết (_______18_______7, 8, 9) vào môi trường của bạn. Khi bạn đã hiểu rõ về nó, các bộ sưu tập phần mềm khá dễ sử dụng. Nó thực sự hữu ích để hiểu cách thức hoạt động của các thay đổi biến môi trường trong Linux/UNIX. Các thay đổi chỉ có thể được thực hiện đối với quy trình hiện tại. Khi một tiến trình con được tạo ra, nó sẽ kế thừa môi trường của tiến trình cha. Bất kỳ thay đổi môi trường nào được thực hiện trong cha mẹ sau khi đứa trẻ được tạo sẽ không ảnh hưởng đến đứa trẻ. Do đó, những thay đổi được thực hiện bởi 1 sẽ chỉ ảnh hưởng đến phiên cuối hiện tại hoặc bất kỳ thứ gì bắt đầu từ phiên đó. Bài viết này cũng chỉ ra cách bạn có thể kích hoạt vĩnh viễn bộ sưu tập phần mềm cho tài khoản người dùng của mình
Điều kiện tiên quyết cài đặtCài đặt các công cụ phát triển bao gồm GCC, make và gitNếu bạn cài đặt các mô-đun phụ thuộc vào mã đã biên dịch, bạn sẽ cần các công cụ để biên dịch chúng. Nếu bạn chưa cài đặt các công cụ phát triển, hãy chạy lệnh sau
Kích hoạt repo với các công cụ dành cho nhà phát triển bổ sungMặc dù các kho phần mềm RHEL mặc định/cơ sở có nhiều công cụ phát triển, đây là những phiên bản cũ hơn được cung cấp cùng với HĐH và được hỗ trợ cho vòng đời 10 năm đầy đủ của HĐH. Các gói được cập nhật thường xuyên hơn và có vòng đời hỗ trợ khác được phân phối trong các kho lưu trữ khác không được bật theo mặc định Bộ sưu tập phần mềm Red Hat nằm trong kho lưu trữ 7. Các gói RHSCL có một số phụ thuộc vào các gói trong kho lưu trữ 2, vì vậy bạn cần kích hoạt cả haiĐể kích hoạt các kho lưu trữ bổ sung, hãy chạy các lệnh sau như 6
ghi chú
Để xem repo nào có sẵn cho đăng ký hiện tại của bạn, hãy chạy lệnh sau ________số 8_______Để xem kho lưu trữ nào được bật, hãy sử dụng 7
Cài đặt Python3Bây giờ bạn có thể cài đặt Python 3. 6 (hoặc các phiên bản khác trong RHSCL) với 0
ghi chú
Cài đặt các gói bổ sungTheo tùy chọn, bạn có thể muốn cài đặt các gói RPM sau đây là một phần của bộ sưu tập phần mềm
Ví dụ
Ghi chú. Theo mặc định, các mô-đun hệ thống sẽ không được sử dụng với môi trường ảo Python. Sử dụng tùy chọn 8 khi tạo môi trường ảo để bao gồm các mô-đun hệ thống
Cách sử dụng Python 3 (# subscription-manager repos --list-enabled1)Python 3 hiện đã được cài đặt. Bạn không cần phải chạy theo ID người dùng 6 nữa. Phần còn lại của các lệnh sẽ được thực thi bằng tài khoản người dùng thông thường của bạnNhư đã đề cập trước đây, bộ sưu tập phần mềm được cài đặt theo 01 và không được tự động thêm vào 7, 8 và 9 của bạn. Lệnh 1 sẽ thực hiện các thay đổi cần thiết và chạy lệnh. Do cách các biến môi trường hoạt động trong Linux (và UNIX), các thay đổi sẽ chỉ có hiệu lực đối với lệnh được chạy bởi scl 06. Bạn có thể sử dụng 07 làm lệnh để bắt đầu một phiên tương tác. Đây là một trong những cách phổ biến nhất (nhưng không phải là cách duy nhất) để làm việc với các bộ sưu tập phần mềm
Ghi chú. Kích hoạt bộ sưu tập Python làm cho 08 trong đường dẫn của bạn, không có số phiên bản, trỏ tới Python 3. 09 vẫn sẽ là Python 2. Bạn vẫn có thể chạy Python 2 bằng cách gõ 10, 11 hoặc 09. Bạn nên sử dụng số phiên bản để tránh mọi sự mơ hồ về ý nghĩa của 08. Điều này cũng áp dụng cho các lệnh Python khác trong 14, chẳng hạn như 7, 16, 17, 18 và 9. Để biết thêm thông tin, hãy xem PEP 394GHI CHÚ. Xem Cách kích hoạt vĩnh viễn bộ sưu tập phần mềm bên dưới để đưa Python 3 vĩnh viễn vào đường dẫn của bạn
Tạo môi trường ảo Python (cách thực hành tốt nhất)Sử dụng môi trường ảo Python là cách tốt nhất để cô lập các phụ thuộc dành riêng cho dự án và tạo môi trường có thể tái tạo. Nói cách khác, đó là một cách để tránh xung đột phụ thuộc dẫn đến địa ngục phụ thuộc. Sử dụng môi trường ảo sẽ cho phép bạn sử dụng 7 để cài đặt bất kỳ mô-đun nào bạn cần cho dự án của mình trong một thư mục biệt lập dưới ID người dùng bình thường của bạn. Bạn có thể dễ dàng có nhiều dự án với các phụ thuộc khác nhau. Để làm việc trên một dự án cụ thể, bạn kích hoạt môi trường ảo, môi trường này sẽ thêm các thư mục phù hợp vào (các) đường dẫn của bạnSử dụng môi trường ảo cùng với tệp 21, 22 và tệp 23 sẽ cung cấp cho bạn đường dẫn đến môi trường có thể sao chép để chạy mã của bạn. Những người khác cần chạy mã của bạn có thể sử dụng tệp 23 mà bạn tạo để tạo môi trường phù hợpTheo mặc định, môi trường ảo sẽ không sử dụng bất kỳ mô-đun nào được cài đặt trên hệ thống hoặc các mô-đun được cài đặt trong thư mục chính của bạn. Từ góc độ cách ly và để tạo môi trường có thể tái tạo, điều này thường được coi là hành vi đúng. Tuy nhiên, bạn có thể thay đổi điều đó bằng cách sử dụng đối số 8Tôi có nên sử dụng $ su - # yum install @development8 hoặc $ su - # yum install @development9 hay cái gì khác không?Khi bạn cài đặt Python 3 từ Bộ sưu tập phần mềm Red Hat, 8, 9 và 7 sẽ được cài đặt, vì vậy bạn sẵn sàng cài đặt bất kỳ mô-đun nào bạn chọn. "" trong tài liệu Python hiện tại nói điều này
Vì vậy, đối với tất cả các phiên bản gần đây của Python 3, 8 được ưu tiênNếu bạn làm việc với Python 2. 7, bạn sẽ cần sử dụng 9Các lệnh để tạo môi trường ảo chỉ khác ở tên mô-đun được sử dụng. Sau khi tạo, lệnh kích hoạt môi trường ảo là như nhau Ghi chú. đối với 9, nên sử dụng 39 thay vì sử dụng lệnh 9. Xem Tránh sử dụng tập lệnh trình bao bọc Python bên dưới để biết thêm thông tinTạo và kích hoạt môi trường ảo với $ su - # yum install @development8Nếu bạn chưa làm như vậy, hãy kích hoạt bộ sưu tập 5 0Bây giờ hãy tạo môi trường ảo. Để tránh mọi bất ngờ, hãy sử dụng số phiên bản rõ ràng để chạy Python 1Bất cứ khi nào bạn cần kích hoạt môi trường ảo, hãy chạy lệnh sau 2Ghi chú. khi bạn đã kích hoạt môi trường ảo, lời nhắc của bạn sẽ thay đổi để nhắc bạn rằng bạn đang làm việc trong môi trường ảo. Ví dụ 3Ghi chú. Khi bạn đăng nhập lại hoặc bắt đầu một phiên mới, bạn sẽ cần kích hoạt lại môi trường ảo bằng lệnh 43. Ghi chú. bạn nên chạy 1 trước khi kích hoạt môi trường ảoĐể biết thêm thông tin, hãy xem Môi trường ảo và Gói trong hướng dẫn Python 3 tại tài liệu. con trăn. tổ chức Tạo và kích hoạt môi trường ảo với $ su - # yum install @development9Nếu bạn chưa làm như vậy, hãy kích hoạt bộ sưu tập 5 0Bây giờ hãy tạo môi trường ảo. Để tránh mọi bất ngờ, hãy sử dụng số phiên bản rõ ràng để chạy Python 5Bất cứ khi nào bạn cần kích hoạt môi trường ảo, hãy chạy lệnh sau. Ghi chú. bạn nên chạy 1 trước khi kích hoạt môi trường ảo 2Ghi chú. khi bạn đã kích hoạt môi trường ảo, lời nhắc của bạn sẽ thay đổi để nhắc bạn rằng bạn đang làm việc trong môi trường ảo. Ví dụ 3Ghi chú. Khi bạn đăng nhập lại hoặc bắt đầu một phiên mới, bạn sẽ cần kích hoạt lại môi trường ảo bằng lệnh 43. Ghi chú. bạn nên chạy 1 trước khi kích hoạt môi trường ảoĐể biết thêm thông tin, hãy xem Cài đặt gói bằng pip và virtualenv trong Hướng dẫn sử dụng gói Python Quản lý ứng dụng phụ thuộc với $ su - # subscription-manager repos \ --enable rhel-7-server-optional-rpms \ --enable rhel-server-rhscl-7-rpms0Từ hướng dẫn Hướng dẫn sử dụng bao bì Python, Quản lý phụ thuộc ứng dụng là người quản lý phụ thuộc cho các dự án Python. Nếu bạn đã quen thuộc với Node. js' npm hoặc gói của Ruby, về mặt tinh thần, nó tương tự như các công cụ đó. Mặc dù chỉ sử dụng một mình là đủ cho mục đích sử dụng cá nhân, nhưng Pipenv được khuyến nghị cho các dự án hợp tác vì đây là công cụ cấp cao hơn giúp đơn giản hóa việc quản lý phụ thuộc cho các trường hợp sử dụng phổ biến. " Với pipenv, bạn không còn cần phải sử dụng riêng 7 và 9 nữa. 0 hiện không phải là một phần của thư viện Python 3 tiêu chuẩn hoặc Bộ sưu tập phần mềm Red Hat. Bạn có thể cài đặt nó bằng cách sử dụng 7. (Ghi chú. xem khuyến nghị bên dưới về việc không chạy 55 như 6. ) Vì 0 sử dụng 9 để quản lý môi trường, bạn nên cài đặt 0 mà không cần kích hoạt bất kỳ môi trường ảo nào. Tuy nhiên, đừng quên kích hoạt bộ sưu tập phần mềm Python 3 trước 8Tạo và sử dụng các môi trường bị cô lập với 0 hoạt động hơi khác so với 8 hoặc 9. Một môi trường ảo sẽ tự động được tạo nếu không có 63 trong thư mục hiện tại khi bạn cài đặt gói đầu tiên. Tuy nhiên, bạn nên tạo một môi trường rõ ràng với phiên bản Python cụ thể mà bạn muốn sử dụng. 9Để kích hoạt môi trường Pipenv, hãy cd vào thư mục đó và chạy 64 0Pipenv tương tự như 1 ở chỗ nó không cố gắng sửa đổi môi trường hiện tại bằng 43, thay vào đó, nó bắt đầu trình bao mới. Để hủy kích hoạt, 67 trình bao. Bạn cũng có thể chạy lệnh trong môi trường pipenv bằng cách sử dụng 68Để biết thêm thông tin xem
Mẹo chung để làm việc với PythonLệnh $ scl enable rh-python36 bash $ python3 -V Python 3.6.3 $ python -V # python now also points to Python3 Python 3.6.3 $ mkdir ~/pydev $ cd ~/pydev $ python3 -m venv py36-venv $ source py36-venv/bin/activate (py36-venv) $ python3 -m pip install ...some modules...08. Tránh những bất ngờ bằng cách sử dụng số phiên bảnĐể tránh bất ngờ, đừng gõ 08. Sử dụng số phiên bản rõ ràng trong lệnh, chẳng hạn như 71 hoặc 11Ở mức tối thiểu, hãy luôn sử dụng 73 hoặc 10. Nếu bạn đang đọc bài viết này, tức là bạn đã cài đặt nhiều hơn một phiên bản Python trên hệ thống của mình. Tùy thuộc vào đường dẫn của bạn, bạn có thể nhận được các phiên bản khác nhau. Kích hoạt và hủy kích hoạt môi trường ảo, cũng như kích hoạt bộ sưu tập phần mềm, sẽ thay đổi đường dẫn của bạn, do đó, bạn có thể dễ nhầm lẫn về phiên bản mà mình sẽ nhận được khi nhập 08Vấn đề tương tự xảy ra với bất kỳ tiện ích Python nào, chẳng hạn như 7 hoặc 16. Nên sử dụng số phiên bản, ví dụ: 78. Ở mức tối thiểu sử dụng số phiên bản chính. 79. Xem phần tiếp theo để có giải pháp thay thế mạnh mẽ hơn
Các tập lệnh bắt đầu bằng $ scl enable rh-python36 bash $ python3 -V Python 3.6.3 $ python -V # python now also points to Python3 Python 3.6.3 $ mkdir ~/pydev $ cd ~/pydev $ python3 -m venv py36-venv $ source py36-venv/bin/activate (py36-venv) $ python3 -m pip install ...some modules...80 có thể bị lỗiTrong nhiều năm, lời khuyên là bắt đầu tập lệnh bằng 80 để tránh các đường dẫn khó viết mã như 82hoặc 83 trong tập lệnh. Cấu trúc này sẽ tìm kiếm đường dẫn của bạn để tìm Python. Kích hoạt bộ sưu tập phần mềm và/hoặc kích hoạt môi trường ảo có thể thay đổi những gì trong đường dẫn của bạn. Vì vậy, tập lệnh Python 2 bắt đầu bằng cấu trúc này có thể đột ngột bị hỏng khi đường dẫn của bạn thay đổi. Khi việc sử dụng môi trường ảo tăng lên, tốt nhất là không nên sử dụng cấu trúc này nữa vì bạn có thể cài đặt Python khác với các mô-đun khác
Sử dụng $ scl enable rh-python36 bash $ python3 -V Python 3.6.3 $ python -V # python now also points to Python3 Python 3.6.3 $ mkdir ~/pydev $ cd ~/pydev $ python3 -m venv py36-venv $ source py36-venv/bin/activate (py36-venv) $ python3 -m pip install ...some modules...84 để xác định phiên bản Python nào sẽ được chạySử dụng lệnh 84 để xác định đường dẫn đầy đủ sẽ được sử dụng khi bạn nhập lệnh. Điều này sẽ giúp bạn hiểu phiên bản nào của 08 nằm trong đường dẫn của bạn trước tiên và sẽ được chạy khi bạn nhập 08ví dụ 1
Tránh các tập lệnh bao bọc Python chẳng hạn như $ su - # yum install @development9. Sử dụng tên mô-đunMột số tiện ích Python được đặt trong đường dẫn của bạn dưới dạng tập lệnh bao bọc trong thư mục 14. Điều này thuận tiện vì bạn chỉ cần gõ 7 hoặc 91 Hầu hết các tiện ích Python thực ra chỉ là các mô-đun Python với các tập lệnh bao bọc để khởi động Python và chạy mã trong mô-đunSự cố với các tập lệnh trình bao bọc cũng giống như sự mơ hồ xảy ra khi nhập 08. Bạn sẽ nhận được phiên bản nào của 7 hoặc 9 khi nhập lệnh mà không có số phiên bản? . Một số sự cố nhỏ (khó chẩn đoán) có thể xảy ra nếu bạn vô tình trộn các phiên bảnGhi chú. Có một số thư mục mà tập lệnh bao bọc có thể nằm trong đó. Phiên bản bạn nhận được phụ thuộc vào đường dẫn của bạn, phiên bản này sẽ thay đổi khi bạn bật bộ sưu tập phần mềm và/hoặc kích hoạt môi trường ảo. Các mô-đun được cài đặt với 95 đặt tập lệnh bao bọc của chúng trong ____24_______96, tập lệnh này có thể bị che khuất bằng cách kích hoạt bộ sưu tập phần mềm hoặc môi trường ảoBạn có thể tránh những bất ngờ từ các vấn đề về đường dẫn bằng cách chạy mô-đun trực tiếp từ một phiên bản cụ thể của Python bằng cách sử dụng tên mô-đun 97. Mặc dù điều này liên quan đến việc gõ nhiều hơn nhưng đây là cách tiếp cận an toàn hơn nhiềukhuyến nghị
Không chạy $ scl enable rh-python36 bash $ python3 -V Python 3.6.3 $ python -V # python now also points to Python3 Python 3.6.3 $ mkdir ~/pydev $ cd ~/pydev $ python3 -m venv py36-venv $ source py36-venv/bin/activate (py36-venv) $ python3 -m pip install ...some modules...55 với quyền root (hoặc với $ scl enable rh-python36 bash $ cd ~/pydev $ source py36-env/bin/activate05)Chạy 55 với quyền root trực tiếp hoặc bằng cách sử dụng 05 là một ý tưởng tồi và sẽ gây ra sự cố cho bạn vào một lúc nào đó. Một số vấn đề mà bạn có thể gặp phải là
Sử dụng môi trường ảo sẽ cho phép bạn tách biệt các mô-đun bạn cài đặt cho từng dự án khỏi các mô-đun là một phần của cài đặt Python từ Red Hat. Sử dụng môi trường ảo được coi là phương pháp hay nhất để tạo môi trường biệt lập cung cấp các phụ thuộc cần thiết cho một mục đích cụ thể. Bạn không cần sử dụng 13 khi chạy 7 trong môi trường ảo vì nó sẽ mặc định cài đặt trong môi trường ảo mà bạn phải có quyền ghi vàoNếu bạn không sử dụng môi trường ảo hoặc cần một mô-đun/công cụ khả dụng bên ngoài môi trường ảo, hãy sử dụng ____________95 để cài đặt các mô-đun trong thư mục chính của bạn Trong trường hợp bạn nghĩ điều này quá thảm khốc, hãy xem truyện tranh xkcd này. Đừng quên di chuột để bạn thấy văn bản thay thế
Sử dụng môi trường ảo thay vì $ scl enable rh-python36 bash $ python3 -V Python 3.6.3 $ python -V # python now also points to Python3 Python 3.6.3 $ mkdir ~/pydev $ cd ~/pydev $ python3 -m venv py36-venv $ source py36-venv/bin/activate (py36-venv) $ python3 -m pip install ...some modules...95Một số hướng dẫn khuyên bạn nên sử dụng 95. Mặc dù điều này được ưu tiên hơn là chạy 7 như 6, nhưng sử dụng môi trường ảo là cách thực hành tốt hơn nhiều để cách ly đúng cách các mô-đun bạn cần cho một dự án hoặc nhóm dự án nhất định. 95 lượt cài đặt sử dụng 21, có thể ẩn thông tin này bằng cách bật bộ sưu tập phần mềm và/hoặc kích hoạt môi trường ảo. Đối với các mô-đun cài đặt tập lệnh trình bao bọc trong 96, điều này có thể gây ra sự không khớp giữa tập lệnh trình bao bọc và mô-đunNgoại lệ đối với lời khuyên này là các mô-đun và công cụ mà bạn cần sử dụng bên ngoài môi trường ảo. Ví dụ chính là 0. Bạn nên sử dụng 24 để cài đặt 0. Bằng cách đó, bạn sẽ có 0 trong đường dẫn của mình mà không cần bất kỳ môi trường ảo nào
Không sử dụng hệ thống Python cho các dự án của riêng bạnPhiên bản Python được cài đặt trong 09 và 28 là một phần của hệ điều hành. RHEL đã được thử nghiệm với một bản phát hành Python cụ thể (2. 7. 5) sẽ được duy trì trong suốt thời gian 10 năm được hỗ trợ của HĐH. Nhiều công cụ quản trị tích hợp thực sự được viết bằng Python. Cố gắng thay đổi phiên bản Python trong 82 thực sự có thể phá vỡ một số chức năng của hệ điều hànhTại một số thời điểm, bạn có thể muốn chạy mã của mình trên một phiên bản HĐH khác. Hệ điều hành đó có thể sẽ được cài đặt một phiên bản Python khác như 09, 28 hoặc thậm chí là 32. Mã bạn viết có thể phụ thuộc vào một phiên bản cụ thể có thể được quản lý tốt nhất thông qua môi trường ảo và/hoặc bộ sưu tập phần mềmMột ngoại lệ ở trên là nếu bạn đang viết các công cụ quản trị hệ thống. Trong trường hợp đó, bạn nên sử dụng Python trong 82 vì nó đã cài đặt đúng mô-đun và thư viện cho các API trong HĐH. Ghi chú. Nếu bạn đang viết các công cụ quản lý hoặc quản trị hệ thống bằng Python, bạn có thể muốn xem qua Ansible. Ansible được viết bằng Python, sử dụng Jinja2 để tạo khuôn mẫu và cung cấp các bản tóm tắt cấp cao hơn cho nhiều tác vụ hệ thốngMẹo. Nếu bạn cần làm việc với Python 2. 7, cài đặt bộ sưu tập phần mềm 3. Thực hiện theo các bước cài đặt ở trên nhưng sử dụng 3 thay vì 5. Bạn có thể kích hoạt cả hai bộ sưu tập cùng một lúc, vì vậy bạn sẽ có cả bộ sưu tập mới hơn 11 và 71 trong đường dẫn của mình. Ghi chú. bộ sưu tập bạn kích hoạt sau cùng là bộ sưu tập sẽ xuất hiện đầu tiên trong đường dẫn của bạn, bộ sưu tập này xác định phiên bản bạn nhận được khi nhập lệnh như 08 hoặc 7 mà không có số phiên bản rõ ràngKhông thay đổi hoặc ghi đè lên $ scl enable rh-python36 bash $ python3 -V Python 3.6.3 $ python -V # python now also points to Python3 Python 3.6.3 $ mkdir ~/pydev $ cd ~/pydev $ python3 -m venv py36-venv $ source py36-venv/bin/activate (py36-venv) $ python3 -m pip install ...some modules...09, $ scl enable rh-python36 bash $ cd ~/pydev $ source py36-env/bin/activate28 hoặc $ scl enable rh-python36 bash $ cd ~/pydev $ source py36-env/bin/activate43Như đã đề cập ở trên, Python hệ thống là một phần của Red Hat Enterprise Linux 7 và được sử dụng bởi các tiện ích hệ thống quan trọng như 0. (Vâng, yum được viết bằng Python. ) Vì vậy, ghi đè lên hệ thống Python có khả năng phá vỡ hệ thống của bạn—rất tệ. Nếu bạn cố gắng biên dịch Python từ nguồn, đừng thực hiện 45 (với quyền root) mà không sử dụng tiền tố khác, nếu không nó sẽ ghi đè lên 09
thủ thuật thu thập phần mềmBật bộ sưu tập Python *trước* môi trường ảoBạn phải luôn bật bộ sưu tập phần mềm Python trước khi sử dụng bất kỳ tiện ích môi trường ảo Python nào để tạo hoặc kích hoạt môi trường. Để mọi thứ hoạt động chính xác, bạn cần có phiên bản Python mong muốn trong đường dẫn của mình vì môi trường ảo Python sẽ cần phiên bản này. Một số vấn đề, một số vấn đề nhỏ, sẽ xuất hiện nếu bạn cố gắng bật/kích hoạt sai thứ tự Ví dụ cho 8 2Khi kích hoạt lại sau trong Shell mới 3Ví dụ cho 9 4Khi kích hoạt lại sau trong Shell mới 3Cách kích hoạt vĩnh viễn bộ sưu tập phần mềmĐể thêm vĩnh viễn Python 3 vào (các) đường dẫn của bạn, bạn có thể thêm lệnh 49 vào "tệp dấu chấm" cho ID người dùng cụ thể của mình. Lợi ích của phương pháp này là bộ sưu tập đã được kích hoạt ở mọi lần đăng nhập. Nếu bạn đang sử dụng màn hình đồ họa, mọi thứ bạn bắt đầu từ menu sẽ được bật bộ sưu tậpCó một vài lưu ý với cách tiếp cận này
Sử dụng trình soạn thảo văn bản ưa thích của bạn, thêm dòng sau vào 60 của bạn 6Ghi chú. bạn cũng có thể thêm dòng 49 vào đầu tập lệnh xây dựng để chọn Python mong muốn cho bản dựng. Nếu tập lệnh xây dựng của bạn không được viết dưới dạng tập lệnh shell/bash, bạn chỉ cần bọc nó trong tập lệnh shell có lệnh nguồn 49 và sau đó chạy tập lệnh xây dựng của bạn
Cách sử dụng Python 3 từ RHSCL trong #. (shebang) dòng kịch bảnBạn có thể tạo tập lệnh sẽ sử dụng Python từ bộ sưu tập phần mềm mà không yêu cầu phải chạy thủ công trước tiên đối với ____18_______1. Điều này có thể được thực hiện bằng cách sử dụng 64 làm thông dịch viên cho tập lệnh 7Ghi chú. Bạn có thể muốn thử chỉ sử dụng đường dẫn đầy đủ đến 65 mà không có 1. Trong nhiều trường hợp, điều này sẽ không hoạt động. Hành vi phụ thuộc vào bộ sưu tập phần mềm cụ thể. Đối với hầu hết các bộ sưu tập, điều này sẽ không thành công với lỗi thư viện dùng chung, vì 9 không được đặt chính xác. Bộ sưu tập 3 không báo lỗi, nhưng nó tìm thấy thư viện chia sẻ sai, vì vậy bạn nhận được phiên bản Python sai, điều này có thể gây ngạc nhiên. Tuy nhiên, 5 có thể được tham chiếu trực tiếp mà không cần đặt 9, nhưng hiện tại đây là bộ sưu tập Python duy nhất hoạt động theo cách đó. Không có gì đảm bảo rằng các bộ sưu tập trong tương lai sẽ hoạt động theo cách tương tựCách xem bộ sưu tập phần mềm nào được cài đặtBạn có thể sử dụng lệnh 71 để xem bộ sưu tập phần mềm nào được cài đặt. Điều này sẽ hiển thị tất cả các bộ sưu tập phần mềm đã được cài đặt, cho dù chúng có được bật hay không 8Làm cách nào để biết bộ sưu tập phần mềm nào được bậtBiến môi trường 72 chứa danh sách các bộ sưu tập phần mềm hiện đang được bật 9Trong tập lệnh, bạn có thể sử dụng 73 để kiểm tra xem một bộ sưu tập cụ thể có được bật hay khôngLàm cách nào để tìm danh sách Bộ sưu tập phần mềm Red Hat và chúng được hỗ trợ trong bao lâu?Xem Vòng đời sản phẩm của Bộ sưu tập phần mềm Red Hat trên Cổng thông tin khách hàng của Red Hat. Nó có một danh sách các gói Red Hat Software Collections và thông tin hỗ trợ Bạn cũng có thể kiểm tra ghi chú phát hành cho bản phát hành gần đây nhất của Bộ sưu tập phần mềm Red Hat Tìm các gói RPM bổ sung và xem các phiên bản có sẵn khácBạn có thể sử dụng 74 để tìm kiếm các gói bổ sung và xem các phiên bản khác có sẵnĐể tìm kiếm các gói khác là một phần của bộ sưu tập 5 0Bắt đầu với Python 3. 4, tên bộ sưu tập và tên gói đều có tiền tố là 76. Vì vậy, bạn có thể sử dụng lệnh sau để xem tất cả các gói 77 và do đó, xem những bộ sưu tập nào có sẵn 1Ghi chú. để xem các gói có sẵn trong Python 2. 7 bộ sưu tập, tìm kiếm cho 3 2Tất nhiên, bạn có thể chỉ cần tìm kiếm 08 và nhận danh sách mọi RPM có sẵn có ____24_______08 trong tên hoặc mô tả. Đó sẽ là một danh sách rất dài, vì vậy tốt nhất bạn nên chuyển hướng đầu ra sang một tệp và sử dụng 81 hoặc trình soạn thảo văn bản để tìm kiếm tệp. Các gói bắt đầu bằng 82 (không có số phiên bản) là một phần của cơ sở RHEL Python 2. 7. 5 gói được cài đặt trong 82
Xử lý sự cốcon trăn. lỗi khi tải thư viện dùng chungLỗi này xảy ra khi bạn đang cố chạy tệp nhị phân nhưng không thể tìm thấy thư viện dùng chung mà nó phụ thuộc vào. Thông thường, điều này xảy ra khi cố gắng chạy 08 từ bộ sưu tập phần mềm mà không kích hoạt nó trước. Ngoài cài đặt 7, 1 còn cài đặt 9. Điều này thêm thư mục chứa các đối tượng được chia sẻ của bộ sưu tập phần mềm vào đường dẫn tìm kiếm thư việnĐể xem những biến môi trường nào được sửa đổi, hãy xem 88 3Phiên bản Python sai khi chạy $ scl enable rh-python36 bash $ python3 -V Python 3.6.3 $ python -V # python now also points to Python3 Python 3.6.3 $ mkdir ~/pydev $ cd ~/pydev $ python3 -m venv py36-venv $ source py36-venv/bin/activate (py36-venv) $ python3 -m pip install ...some modules...08Đầu tiên, việc chạy 08 mà không có số phiên bản có khả năng cung cấp cho bạn một phiên bản Python không mong muốn vào một thời điểm nào đó. Kết quả phụ thuộc vào 7 của bạn, điều này phụ thuộc vào việc bạn đã kích hoạt bộ sưu tập phần mềm và/hoặc kích hoạt môi trường ảo hay chưa. Nếu bạn sử dụng một số phiên bản chẳng hạn như 71 và bạn chưa kích hoạt/kích hoạt đúng môi trường, bạn sẽ nhận được lỗi “không tìm thấy lệnh” rõ ràng và dễ hiểuThứ hai, bạn cũng có thể tải sai phiên bản nếu quên bật bộ sưu tập phần mềm. Kích hoạt bộ sưu tập phần mềm sẽ đặt thư mục 93 của bộ sưu tập vào đường dẫn của bạn trước, do đó, nó sẽ ẩn tất cả các phiên bản lệnh khác có cùng tênBộ sưu tập phần mềm cần được kích hoạt ngay cả khi bạn cung cấp đường dẫn đầy đủ đến tệp nhị phân 08. Đối với hầu hết các bộ sưu tập, bạn sẽ gặp lỗi thư viện dùng chung (xem bên trên) mà không đặt đúng đường dẫn thư viện. Tuy nhiên, nếu bạn thử điều này với bộ sưu tập 3, bạn sẽ nhận được Python 2. 7. 5 (phiên bản mặc định) thay vì Python 2. 7. 13 như bạn mong đợi. Điều này là do sự phụ thuộc vào thư viện được chia sẻ được thỏa mãn từ 96 thay vì từ bộ sưu tập phần mềm, vì vậy bạn chọn hệ thống PythonLỗi khi chạy $ su - # yum install @development7. ImportError không thể nhập tên 'chính'Nếu bạn chạy 98, như một số hướng dẫn gợi ý, lệnh 7 sẽ không hoạt động nữa. Sự cố là sự cố đường dẫn kết hợp với sự không tương thích giữa các phiên bản. Cài đặt người dùng của 7 đã đặt một lệnh 7 mới trong 96. Tuy nhiên, 96 nằm trong con đường của bạn *sau* bộ sưu tập phần mềm. Vì vậy, bạn nhận được tập lệnh bao bọc cũ hơn không tương thích với mô-đun mới hơnĐiều này có thể được giải quyết theo nhiều cách
Ghi chú. Để gỡ cài đặt 7 đã nâng cấp đã được cài đặt trong 21, hãy chạy lệnh sau dưới ID người dùng thông thường của bạn (không phải 6) 4
Không thể tìm thấy $ su - # yum install @development16Bộ sưu tập phần mềm 5 bao gồm tập lệnh trình bao bọc 9 nhưng không có liên kết cho 16. Có hai cách giải quyết cho vấn đề này, nhưng trước tiên tôi nên chỉ ra rằng 8 hiện là công cụ ưa thích của Python 3 cho môi trường ảoGiải pháp thay thế ưa thích là tránh hoàn toàn tập lệnh bao bọc và gọi trực tiếp mô-đun 5Ngoài ra, bạn có thể tạo liên kết tượng trưng của riêng mình trong thư mục 21 6Thêm thông tin. Phát triển bằng Python trên Nền tảng Red HatNick Coghlan và Graham Dumpleton đã nói chuyện về Phát triển bằng Python trên Nền tảng Red Hat tại DevNation 2016. Cuộc nói chuyện đầy ắp thông tin và vẫn rất phù hợp. Chúng bao gồm thông tin về cách xây dựng ứng dụng Python bằng cách sử dụng vùng chứa, cách sử dụng s2i và triển khai lên Red Hat OpenShift. Tôi khuyên bạn nên xem video hoặc ít nhất là xem lại các slide |