稍加考虑就会发现每个 Linux 发行版都与特定的包管理器相关/关联。
例如:
- 易于:Debain 家族(Debian、Ubuntu、Mint 等)
- 转速:RedHat家族(RedHat、Fedora等)
每个 Linux 发行版是否(仅)基于特定/特定的包管理器?
或者可以在不同的 Linux 发行版上使用另一个/任何包管理器(例如:在 Debian 上使用 Nix)?
Linux 发行版与其包管理器之间的关系/交互是什么?
答案1
简短回答:软件包管理器与发行版高度集成。可能在您的发行版上使用外部包管理器,但这可能会导致不稳定、不是最新的冗余安装。
长答案
包管理器会跟踪您的系统组件和配置:
- 图书馆
- 软件
- 配置文件
- 版本
- 建筑学
这意味着包管理器知道一切都安装在哪里以及如何安装,并尊重分布规则安装新软件包时。另外,一些包管理器比如Portage
(在 Gentoo 上)安装通过从源代码构建软件包。APT
或RPM
安装预编译的软件包。
如果您并排使用两个不同的包管理器,它们可能会相互覆盖:在不同的位置安装重复的文件,覆盖配置文件,用与系统其余部分不兼容的新版本替换依赖项(例如:库),...
现在,理论上,你能在单个系统上使用多个包管理器。但您需要仔细配置和调整它们。
其他选项
类似的工具封装套件提供相同的界面来安装和管理多个发行版上的包。它不会取代系统默认的包管理器,而是包装它。
外星人可用于将rpm
包转换为deb
包。
答案2
您通常会发现每个发行版都更喜欢一个包管理器系统。包管理器已被移植到其他发行版(例如,APT 可用于 RH 类型的发行版),但使用外部包管理器可能无法在该发行版上很好地工作。
答案3
吃豆人是一个与发行版无关的包管理器:它最初是为架构Linux,但现在被多种发行版使用,包括所有 Arch 衍生品和有些是不是基于 Arch,例如:
- 脉轮(最初是 Arch 导数,现在是独立的)
- 德力Linux
- 节俭软件 Linux