我可以在 Ubuntu 上安装 Portage、Pacman 或其他包管理器吗?

Aks*_*yal 29 package-management

我想在 Ubuntu 12.04 LTS 上安装一个非 Ubuntu 包管理器,如 Portage (Gentoo) 或 Pacman (Arch)。

我怎么做?

Izz*_*zzy 27

你没有。包管理器是特定发行版的核心。GentooArchRedhat——它们都使用不同的打包系统。Gentoo 的 portage 包通常从源代码编译,Arch 使用自己的二进制包格式,Redhat 使用RPM作为打包系统——Debian以及UbuntuLinux Mint使用 Debian 包(.deb)。使用SynapticAdept等图形前端或apt-getaptitudedpkg等命令行工具来管理本地安装。

尽管可以在 Ubuntu 上安装其他包管理器(否则它们不会在存储库中),但不建议没有经验的用户使用。在考虑将它们一起使用之前,应该非常熟悉包和包管理器,它们的工作方式等。否则很可能最终导致一个非常损坏的系统——因为一个包管理器不知道其他的,他们会例如覆盖彼此的文件/配置,用一个包管理器卸载一个包可能会破坏与另一个的依赖关系,和更多。

所以现在我强烈建议你使用系统自带的包管理器(见上文)。

  • 我没有说“你不能”,而是“你不能”。对于“普通用户”,我认为他们没有理由想要/需要这样做。可能存在特殊情况(或者他们不会在 repos 中包含这些东西),但是如果将它们混合在一起,没有经验的用户更有可能弄乱系统。所以在做这样的事情之前,一个人至少应该熟悉不同的打包系统,以及这些东西是如何工作的——或者你最终会得到一个损坏的系统,因为一个包管理器不知道另一个,文件/配置被覆盖,一个卸载会破坏对另一个的依赖... (9认同)
  • 事实上,我们可以。我只是无法理解本指南的内容。http://forums.gentoo.org/viewtopic.php?t=28559&highlight=portage+another (2认同)

ish*_*ish 17

可以不 应该

包管理器通常与特定的 Linux 发行版紧密集成,您通常不能将一个发行版的本机管理器安装到另一个发行版上,并期望它正常工作。(但请参阅最后的注释)

但是,您可以安装生成的包,使用工具将 RPM 转换为 DEB 等。这对于 Pacman 包可能是可能的。您可能知道,Portage 从源代码构建所有内容,您可以在任何发行版上执行此操作,而不仅仅是 Gentoo。

注意:虽然yum在 Ubuntu Universe 存储库中有一些类似的可用,甚至理论上可以安装 Pacman、Portage 等,但在实践中这是一个坏主意,因为包本身可能不适合(目录结构等)用于 Ubuntu。

  • 我不认为内部包结构在这里很重要(应该由相关经理处理)。而是依赖关系变得混乱,文件/配置相互覆盖……简而言之:系统完整性处于危险之中。在玩“外星人”之前,应该非常熟悉包、包装和包管理器。 (4认同)
  • 是的,不客气。至于包转换,[alien](http://www.howtoforge.com/converting_rpm_to_deb_with_alien) 可能值得一提,作为该任务最常用的工具。另一种可能性是使用提取的源 RPM 使用 [debbuild](http://projects.deepnet.cx/trac/debbuild) 创建 .deb。或者使用源代码压缩包(例如来自 Arch/Gentoo)并使用 [checkinstall](https://help.ubuntu.com/community/CheckInstall) 构建您自己的 .deb。 (2认同)

xlu*_*asx 7

由于不同的包装系统,包装管理人员在没有大量血汗和泪水的情况下是不可互换的。即便如此,仍有很多依赖问题、错误、错误和兔子洞,您无法摆脱。不,这不是不可能,但是,不建议这样做。PacApt 是在 Ubuntu 中使用 Pacman 和 Portage 命令而不破坏计算机的最佳选择。我相信它支持来自所有主要包管理器的命令。这可能是在 Ubuntu 中安装 Pacman/Portage-likeness 最安全的选择。一探究竟。

如果这不是您要找的东西,最好的办法(和推荐的做法)可能是安装您要使用的软件包管理器的分发版。

PacApt 将 Arch Linux 的惊人 Pacman 包管理器带到其他 Linux 发行版(嗯,有点)

Source:  LifeHacker
Run Code Online (Sandbox Code Playgroud)