Virtualenv에 Yum/Dnf 설치

Virtualenv에 Yum/Dnf 설치

저는 Virtualenv(python3.6 사용)를 만들었고 해당 환경에 yum/dnf 패키지를 설치하려고 합니다. 이를 수행할 수 있는 방법이 있습니까? 또는 해당 환경 에서 각각 오류 -> import dnfimport yum제공합니다 .ModuleNotFoundError: No module named 'dnf'ModuleNotFoundError: No module named 'yum'

답변1

음, 이것이 virtualenv의 목적입니다. 이 경우에는 시스템의 Python 패키지와 별도로 유지하는 것입니다 dnf. virtualenv를 생성할 때 이 문제를 해결하는 몇 가지 방법이 있습니다:

usage: venv [-h] [--system-site-packages] [--symlinks | --copies] [--clear] [--upgrade] [--without-pip] [--prompt PROMPT] [--upgrade-deps] ENV_DIR [ENV_DIR ...]

Creates virtual Python environments in one or more target directories.

positional arguments:
  ENV_DIR               A directory to create the environment in.

options:
  -h, --help            show this help message and exit
  --system-site-packages
                        Give the virtual environment access to the system site-packages dir.

그러므로 --system-site-packages가상환경 생성시 꼭 이용해 주시기 바랍니다.


DNF를 별도로 설치하고 싶을 수도 있습니다. 당연히 100% 배포판 전용 도구로서 사용 가능한 pypi 패키지가 없습니다. 따라서 수동 설치는 dnf git repo README에 설명된 대로 계속 작동합니다.


노트:DNF는 여전히 /etc/의 DNF 구성, /var의 캐시, /lib의 라이브러리를 사용하고 시스템 루트에 설치합니다. 이를 변경하려면 다른 구성 파일을 사용하도록 지시해야 합니다.

답변2

Yum과 dnf는 Linux 패키지 관리자입니다. Virtualenv에서는 pip(Python 패키지 관리자)를 통해 Python 패키지를 설치할 수 있습니다.

관련 정보