Dnf trong python là gì?

Chúng tôi có một playbook vá hệ điều hành Linux được viết và hoạt động trơn tru cho các máy chủ RHEL 7/8 nhưng các máy chủ RHEL 8 được xây dựng gần đây đang gặp sự cố khi phiên bản mặc định của python là 3. 8. 3 và nó hoạt động rất tốt với phiên bản python 3. 6. 8. Thật lạ là nó không hoạt động trên phiên bản mới nhất của python nhưng chúng tôi không tích cực hạ cấp phiên bản. Như một giải pháp thay thế, chúng tôi đã sử dụng giải pháp thay thế python để sử dụng 3. 6. 8 nhưng chúng tôi đang tìm giải pháp lâu dài. chúng tôi đang sử dụng phiên bản ansible 2. 10. 6 và nút điều khiển là RHEL 8 với phiên bản kernel mới nhất được phát hành trong tháng này

Chúng tôi đã cài đặt gói gói python-dnf cũng như mô-đun dnf pip được cài đặt trong cả nút điều khiển và máy chủ từ xa nhưng điều đó không khắc phục được sự cố. playbook hoạt động hoàn hảo với python 3. 6. 8 phiên bản

đầu ra mẫu

 # python
Python 3.8.0 [default, Mar  9 2020, 18:02:46] 
[GCC 8.3.1 20191121 [Red Hat 8.3.1-5]] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dnf
Traceback [most recent call last]:
  File "", line 1, in 

# python
Python 3.6.8 [default, Dec  5 2019, 15:45:45] 
[GCC 8.3.1 20191121 [Red Hat 8.3.1-5]] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dnf
>>> 

VS

Bắt đầu 23-07-2021T12. 29. 28+00. 00 bởi

V. Chaitanya Varma Sagi

Người mới 15 điểm

Đăng nhập để tham gia cuộc trò chuyện

phản hồi

SM Guru 7056 điểm

Sadashiva Murthy M

Vâng, tôi biết tuyên bố vấn đề này ở đây. Chaitanya là đồng nghiệp của tôi. Tôi thấy một vấn đề phù hợp đã được ghi lại trong chủ đề này https. //github. com/ansible/ansible/vấn đề/71668

Hãy xem các thành viên cộng đồng nói gì về điều này

Nhân tiện, họ đang sử dụng phiên bản cộng đồng của Ansible. Do đó, không thể tăng vé hỗ trợ trực tiếp

    SM Guru 7056 điểm

    Sadashiva Murthy M

    Xin chào Tessa,

    Bạn có thể giúp chúng tôi ở đây? . Mặc dù vậy, chúng tôi không mong đợi sự thay đổi ngay lập tức vì chúng tôi biết sẽ nhận được trợ giúp trong diễn đàn này. Bất kỳ trợ giúp được đánh giá cao

    Cảm ơn

      Thầy 33235 điểm

      Christian Labisch

      Lãnh đạo cộng đồng

      Xin chào Chaitanya và Sadashiva,

      Vấn đề chính là có vẻ như bạn đang sử dụng Ansible 2. 10 [được cộng đồng hỗ trợ] chứ không phải phiên bản
      2 được hỗ trợ chính thức. 9 mà Red Hat vận chuyển với RHEL 7 và 8. Điều này gây khó khăn cho việc nhận hỗ trợ từ Red Hat. Và tôi không thể tìm thấy gói
      'python-dnf' trong kho Red Hat. Tôi sẽ gửi tin nhắn cho Tess để cô ấy biết yêu cầu của bạn là tìm một người
      trong tổ chức Mũ Đỏ có thể tham gia và xem xét. Thật không may, tôi không thể làm gì nhiều hơn cho bạn vào lúc này. . ]

      $ sudo dnf list python-dnf
      Error: No matching Packages to list
      

      Trân trọng,
      Christian

        SM Guru 7056 điểm

        Sadashiva Murthy M

        Cảm ơn Christian. Có, chúng tôi biết phiên bản cộng đồng của Ansible đang được sử dụng tại đây

          Thầy 33235 điểm

          Christian Labisch

          Lãnh đạo cộng đồng

          Không có chi, Sadashiva. Đoán xem? . . ]
          "Tôi đã liên hệ với một số Red Hatters và sẽ xem liệu tôi có thể nhờ ai đó phản hồi không. "
          Còn một câu hỏi dành cho tôi. Tại sao bạn không sử dụng phiên bản Red Hat chính thức?

          Trân trọng,
          Christian

            SM Guru 7056 điểm

            Sadashiva Murthy M

            Cảm ơn đã cập nhật Christian. Có, đó là quyết định của khách hàng và họ cũng nhận thức được những hạn chế với phiên bản cộng đồng. Hy vọng rằng ai đó từ nhóm Red Hat Ansible sẽ cung cấp một số hướng khắc phục sự cố này

              VS Người mới 15 điểm

              V. Chaitanya Varma Sagi

              Cảm ơn Christian và Sadashiva rất nhiều vì đã xem xét và cố gắng giúp tôi về vấn đề này. Chúng tôi đã cài đặt các gói bên dưới một nút điều khiển nhưng nó không giúp được gì

              # rpm -qa| grep -i python3-dnf
              python3-dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch
              python3-dnf-4.4.2-11.el8.noarch
              python3-dnf-plugin-post-transaction-actions-4.0.18-4.el8.noarch
              python3-dnf-plugins-core-4.0.18-4.el8.noarch
              python3-dnf-plugin-versionlock-4.0.18-4.el8.noarch
              # ansible --version
              ansible 2.10.6
                config file = /etc/ansible/ansible.cfg
                configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
                ansible python module location = /usr/local/lib/python3.8/site-packages/ansible
                executable location = /usr/local/bin/ansible
                python version = 3.8.6 [default, Jan 22 2021, 11:41:28] [GCC 8.4.1 20200928 [Red Hat 8.4.1-1]]
              We have installed the dnf module as well 
              pip3 list dnf | grep -i dnf
              dnf               0.0.1
              

                Thầy 33235 điểm

                Christian Labisch

                Lãnh đạo cộng đồng

                Không có chi, Chaitanya. Tôi thấy bạn có nghĩa là python3-dnf. vâng, gói này tồn tại tất nhiên. . ]

                Trân trọng,
                Christian

                  JB Người mới 7 điểm

                  Jamie Beck

                  Xin chào từ nhóm Ansible. Tôi đã thảo luận điều này với các đồng nghiệp của mình và đề xuất sẽ là nếu bạn là khách hàng của RHEL, bạn có thể mở một vé hỗ trợ của RHEL cho cấu hình python và nhận hỗ trợ nỗ lực nhất theo lộ trình đó

                    SM Guru 7056 điểm

                    Sadashiva Murthy M

                    Cảm ơn Jamie vì lời giới thiệu. Hãy chờ xem việc này sẽ đi đến đâu

                      VS Người mới 15 điểm

                      V. Chaitanya Varma Sagi

                      Cảm ơn Jamie và Sadashiva đã cố gắng giúp đỡ về điều này

                        Thầy 33235 điểm

                        Christian Labisch

                        Lãnh đạo cộng đồng

                        Cảm ơn rất nhiều vì những nỗ lực của bạn và đã cung cấp khả năng này, Jamie. Chúc bạn may mắn, Chaitanya. . ]

                        DNF được sử dụng để làm gì?

                        Nội dung. DNF là trình quản lý gói phần mềm cài đặt, cập nhật và xóa các gói trên Fedora và là phiên bản kế nhiệm của YUM [Yellow-Dog Updater Modified]. DNF giúp dễ dàng bảo trì các gói bằng cách tự động kiểm tra các phụ thuộc và xác định các hành động cần thiết để cài đặt các gói.

                        DNF so với YUM là gì?

                        Ba chữ cái đó là viết tắt của "Dandified YUM. " DNF là bản viết lại của YUM, "Trình cập nhật Yellowdog, đã sửa đổi. " Bản thân YUM đã là bản viết lại của "Yellowdog UPdater" hoặc YUP, ban đầu được phát triển cho Yellow Dog Linux. Mặc dù bạn có thể thấy YUM được sử dụng trên các hệ thống cũ hơn, nhưng nó đã bị ngừng thay thế cho DNF.

                        Tại sao chúng tôi sử dụng DNF thay vì YUM?

                        So sánh, DNF sử dụng rất ít bộ nhớ khi đồng bộ hóa siêu dữ liệu của kho lưu trữ , so với YUM được biết đến với việc sử dụng bộ nhớ quá mức. Ngoài ra, YUM được sử dụng để làm chậm khi giải quyết các phụ thuộc. DNF có nhiều tính năng hơn và tốt hơn YUM.

                        Chủ Đề