如何将 dnf 包标记为已删除?

如何将 dnf 包标记为已删除?

我想dnf使用 pip 删除已安装的软件包,但是当我输入:

$ dnf info package

包管理器错误地显示该包已安装。我也尝试删除使用的包,dnf remove package但它想删除数十个依赖项。

我已经查看过dnf mark installdnf mark remove但有关这些命令的元数据尚不清楚。

如何标记已被 pip 卸载的系统软件包,以便dnf也知道它们已被删除?

答案1

你在这件事上的做法是错误的。该发行版中的许多应用程序需要pythonpip和一整套 Python 模块。

这些软件包的安装属于/usr/bin1 个软件包管理器的域(dnf- 在 Fedora 上,yum在 CentOS 上)。您不应该使用pip此目录安装/卸载任何内容。这样做会使您正确管理系统的能力面临风险。

从这一点开始你有:

  1. 仅用于dnf管理python-*

    $ yum search python |& grep ^python | head
    python-Bottleneck-doc.noarch : Documentation files for python-Bottleneck
    python-CDDB.x86_64 : CDDB and FreeDB audio CD track info access in Python
    python-GeoIP.x86_64 : Python bindings for the GeoIP geographical lookup
    python-GeographicLib.noarch : Python implementation of GeographicLib
    python-GnuPGInterface.noarch : A Python module to interface with GnuPG
    python-GridDataFormats.noarch : Read and write data on regular grids in Python
    python-IPy.noarch : Python module for handling IPv4 and IPv6 Addresses and
    python-Levenshtein.x86_64 : Python extension computing string distances and
    python-MAPI.x86_64 : The Python MAPI extension by Zarafa
    python-NLopt.x86_64 : Python bindings for NLopt
    
  2. virtualenv使用/设置专用版本的 Python/pip,pipenv用于这些系统上的个人软件开发活动。

    抑制住这种冲动,让它们保持原样,不要将它们视为供您在软件工作中使用等。对于您的应用程序,您应该使用类似virtualenv或 的东西pipenv来设置和维护您自己的reqirements.txt文件和您自己的独立 Python 环境,您将在其中安装/维护/管理编码项目所需的 Python 模块。

    我们已经在网站上对安装/设置进行了广泛的问答,virtualenv因此请使用这些来了解有关其特定内容的更多信息。

    作为参考,请参阅以下入门教程virtualenv

相关内容