为什么技术人员建议使用 YUM 安装,但存储库和提供程序却远远落后?
我一直在一页又一页地阅读有关使用 YUM 软件包安装程序的好处以及 NOBODY 应该如何从源文件构建安装(这对我来说再次毫无意义),但存储库和源构建器总是以 Tarball 格式打包文件,留下一个大量的工作(通常最终会出错)交给个人,而不是为最终用户格式化 SRPM。
世界疯了吗?我感觉我正在服用疯狂的药片!
I have been reading page after page after page about the benefits of using YUM package installer and how NOBODY should built installs from source files (which again makes no sense to me) yet the repositories and source builders always package files in Tarball format, leaving a TON of work (which usually ends up going wrong) to the individual instead of formatting SRPMs for the end user.
Has the world gone mad? I feel like I am taking crazy pills!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
嗯,首先,生活不仅仅是 RPM 和 YUM。例如,SRPM 对于 Debian 来说(有些)毫无用处。
至于为什么你会使用包存储库而不是自己构建所有内容,我不了解你,但我宁愿只是运行(我使用的是 Ubuntu,所以我有 apt-get 而不是 yum)
:尝试找出所有依赖项以及所有依赖项依赖项,确保我拥有所有内容的正确版本,下载/构建/安装任何我没有的(或超出的)日期:如果更新现有依赖项,请确保较新的版本不会破坏我拥有的任何现有软件,并确保我最终不会得到同一事物的 15 个不同版本),并且只有在所有这些之后然后 下载/配置/构建/安装 Firefox。
然后意识到我还需要 Open Office 或 MySQL 并重新开始!
也就是说,我从源代码安装了一些软件包的最新版本。例如,我在 MythTV 上运行我的媒体中心,并且我总是喜欢从 Subversion 构建最新版本。但即便如此,使用包管理器,这也很简单:
也就是说,包管理软件已经知道 MythTV 的所有依赖项,并且可以自动下载和安装它们。为什么要花几个小时手动追踪所有内容?
最后,在我看来,也许您更喜欢像 Gentoo 这样的发行版……当然,这就是 Linux 的好处。如果您不喜欢 Fedora/RedHat 发行版中的运行方式,您可以选择其他发行版。
Well, first of all there's more to life than just RPM and YUM. An SRPM would be (somewhat) useless to Debian, for instance.
As for why you'd use a package repository over building everything yourself, well I don't know about you, but I've much rather just run (I'm using Ubuntu so I have apt-get instead of yum):
Than trying to figure out all the dependencies, as well as all the dependencies dependencies, make sure I have the correct versions of everything, download/build/install any that I don't have (or are out of date: if updating existing dependencies, make sure the newer versions don't break any existing software that I have and make sure I don't end up with 15 different versions of the same thing), and only after all that then download/configure/build/install firefox.
Then realise I'll also want Open Office or MySQL and start all over again!
That said, there are some packages that I install the latest version of from source. For example, I run my media centre off MythTV and I always like to build the latest version of that from Subversion. But even then, with a package manager, that's as easy as:
That is, the package management software already knows all the dependencies for MythTV and it can download and install them automatically. Why spend hours tracking it all down manually?
In the end, it sounds to me like maybe you'd prefer a distro like Gentoo... that's the benefit of Linux, of course. If you don't like how things are run in the Fedora/RedHat distribution, you can just choose a different one.
使用打包基础设施(如 yum)有几个原因:
由于自动依赖项安装,创建“安装”要容易得多。从简单的
到使用 mock/--installroot 创建 chroot,或 live CD 等。
管理这些安装。从明显的
到很难执行的操作,例如:
、
、
。
审核这些安装。这里明显的例子是
(在普通 RHEL-5 atm 中不可用。)和
。
...但是速度并不是一个因素,例如Fedora rawhide 的运行速度与gentoo 一样快。
RHEL-5 的发展速度没有那么快,因为它已经有 3 年历史了,不应该出现故障……不是因为它是使用 yum/rpm 进行管理的。有第三方提供商,例如 iuscommunity,它们为各种软件包发布了可共同安装的较新版本。或者,如果您需要,您可以创建自己的。
或者你可以在 Fedora rawhide 或 gentoo 上运行生产服务器,两者都会很快获得最新的软件包......不过我不推荐这个选项。
There are a few reasons to use a packaging infrastructure (like yum):
Creating "installations" is much easier to do, due to automatic dependency installation. From the simple
to creating chroots with mock/--installroot, or live CDs, etc.
Managing those installations. From the obvious
to operations which are much harder to do otherwise like:
,
,
.
Auditing those installations. The obvious examples here being
(not available in plain RHEL-5 atm.) and
.
...however speed is not a factor, for instance Fedora rawhide moves as fast as gentoo.
RHEL-5 does not move that quickly, because it's 3 years old and is not supposed to break ... not because it's managed using yum/rpms. There are third party providers, like iuscommunity, which release co-installable newer releases for various packages. Or if you need to you create your own.
Or you can run a production server on Fedora rawhide or gentoo, both will have the latest packages really quickly ... I would not recommend that option though.
除其他外,tarball 是独立于系统的,并且 YUM 似乎是基于 RPM 的,因此大多数只能由 Linux 使用(加上 Netware 和 AIX,所以正如我所说,仅限 Linux :))
Among other things, tarballs are system independent and YUM appears to be RPM-based and thus mostly usable by Linux only (plus Netware and AIX, so as I said, Linux only :) )