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


28

我想在Ubuntu 12.04 LTS上安装像Portage(Gentoo)或Pacman(Arch)这样的非Ubuntu软件包管理器。

我怎么做?


1
你为什么想要它?
Web-E

6
没有具体原因。就是想。
Akshit Baunthiyal,2012年

1

可以在gentoo论坛上描述的适用于Ubuntu发行版的工作包portage可以从以下网站 下载:dev.gentoo.org/~zmedico/portage/archives ftp.ucsb.edu/pub/mirrors/linux/gentoo/distfiles

Answers:


24

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

尽管可以在Ubuntu上安装其他软件包管理器(否则它们将不在存储库中),但是不建议经验不足的用户使用。在考虑一起使用它们之前,应该对软件包和软件包管理器,它们的工作方式等非常熟悉。否则,很可能与落得非常破碎系统-作为一个包管理器不知道其他人的话,就会如覆盖每个人的文件/配置,卸载一个包,一个包管理器可以打破依赖与其他,和更多。

因此,现在我强烈建议您使用系统固有的软件包管理器(请参见上文)。


2
实际上,我们可以。我只是不明白本指南的内容。forums.gentoo.org/...
Akshit Baunthiyal

7
我不是说“你不能”,而是“你不”。对于“普通用户”,我认为他们没有/没有理由这样做。可能有一些特殊情况(或者他们在回购协议中没有这些东西),但是如果经验不足的用户将它们混在一起,则很可能使系统混乱。因此,在做这样的事情之前,至少应该熟悉不同的打包系统以及它们的工作方式-否则您最终会遇到系统损坏的情况,因为一个包管理器不知道另一个,文件/配置被覆盖,一个被卸载会破坏对另一个的依赖...
Izzy

16

可以不 应该

软件包管理器通常与特定的Linux发行版非常紧密地集成在一起,并且您通常无法将一个发行版的本机管理器安装到另一个发行版上并期望它可以正常工作。(但请参阅结尾处的注释)

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

注意:尽管yum在理论上可以在Ubuntu Universe存储库中找到类似的东西,甚至可以在理论上安装Pacman,Portage等,但实际上这是一个坏主意,因为软件包本身可能不适合Ubuntu(目录结构等)。


4
我认为内部的包结构在这里并不重要(应该由有关的经理来处理)。而是依赖变得混乱,文件/配置相互覆盖……简而言之:系统完整性面临危险。在玩“外来事物”之前,应该对包装,包装和包装管理者非常熟悉。
Izzy 2012年

2
是的,不客气。至于包转换,外星人可能是值得一提的是此任务的最常用的工具。另一种可能性是使用提取的源RPM使用debbuild创建.deb 。或者使用源tarball(例如来自Arch / Gentoo)并使用checkinstall构建自己的.deb 。
Izzy 2012年

7

由于包装系统不同,如果没有大量的血液,汗水和眼泪,包装管理者就无法互换。即使这样,仍然存在很多依赖关系问题,错误,错误以及无法解决的漏洞。不,不是不是不可能,但是不建议这样做。在不破坏计算机的情况下,PacApt是在Ubuntu中使用Pacman AND Portage命令的最佳选择。我相信它支持所有主要软件包管理器的命令。在Ubuntu中安装Pacman / Portage-likeness可能是最安全的选择。看看这个。

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

PacApt将Arch Linux的Amazing Pacman软件包管理器带到其他Linux发行版(很好,很不错)

Source:  LifeHacker

1
这是pacapt的自述文件github.com/icy/pacapt#readme
Rinzwind

1
这个很有趣。:D
Akshit Baunthiyal 2012年

2

人们在这里描述如何在除gentoo之外的其他Linux发行版上安装portage:https ://forums.gentoo.org/viewtopic-t-125553-postdays-0-postorder-asc-start-300.html

这里有个人介绍了如何从Ubuntu http://blog.abhiomkar.in/2008/07/17/install-gentoo-when-other-linux-running/在其他分区上安装整个Gento


3
欢迎来到Ask Ubuntu!虽然从理论上讲这可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。
凯文·鲍文

1
除此之外,这两个指南都已经有10年历史了(2008年与2007年)。您确定它们仍然适用于最新和最新的安装(甚至问题中提到的12.04)吗?此外,阅读OP是“ Linux的新手”,而“只是想知道”它是否有效,只是简单地指出一些方法而不提及其含义至少有点“粗心”-因为新手几乎肯定会陷入混乱-up系统(正如我在回答中指出的那样)。
Izzy

0

我可以想到一个很好的理由,希望在Debian系统上安装Portage。依赖地狱。不仅是为了解决人们在发生冲突时遇到的难题,而且是为了获取列为某些用户可能不想要的依赖项的应用程序的RID。

例?

如果我偏执狂并且不希望“安全性增强的Linux”或系统上产生的任何NSA怎么办?我并没有声称它本质上是一个安全漏洞,尽管已经发现了一些漏洞。如果我只是有偏见而又希望将其从我的系统中删除,那除了因为它的想法会激怒我之外,没有其他原因了吗?为什么要做它必须删除系统上所有其他重要的应用程序呢?....我并不是说如果希望不将其包括在默认系统中,而是为什么要使其明确地成为任意依赖项不是一个?

网络掩码?对于您的网络管理员来说,这不是真正的依赖关系。我可以看到它在服务器上可能有用,但是为什么桌面用户需要它?实际上,对于希望通过使用虚拟系统获得更多匿名性的用户而言,这可能是一种负担。它还有一个错误,使您可以轻松地进行DDOS攻击,或者在每个人都对它发狂的时候返回。

Avahi服务器?同样,它可能很有用,但是为什么我需要在桌面上发布其所有服务和守护程序的广告?如果我想要更多的匿名性,那么我将不希望有这样的程序将我的计算机服务宣传给任何想要它的黑客或政府机构。打印机应该是说“我是打印机”的人。...我的计算机不必是说“我是在所有这些端口上侦听的计算机,您是打印机...您是打印机”的人。 ..您是打印机..“。当我尝试删除它时,它需要太多的时间。

网络BIOS?不需要它。不想要

标准答复是什么?不要删除它。这是一个简单的答案,但很糟糕。

可以安装二进制文件的Portage之类的东西,甚至是Slackwares风格的文件管理,都可以对基于Debian / Ubuntu的操作系统有所帮助。现在我们可以在开源世界中拥有它了吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.