在生产Web服务器上混合rpm和源代码安装

可以在生产Web服务器上混合使用rpm和基于源的安装吗? 或者是最好是完全用其中一种方式呢?

非常感谢

软件包pipe理总是最好的方法,纯粹是因为它允许你处理一个单一的模块化实体。 软件包使安装和升级服务器相当容易。 它可以让你更轻松地推理你的服务器。 你知道一个特定的软件版本安装。 您可以确定您在多个不同的服务器上运行相同的二进制文件。

我强烈build议您学习如何为您安装的任何一款软件生成RPM软件包。 最初可能会让你放慢脚步,但是稍后你会收获奖励。

我会说select一个path,并保持一致…我个人更喜欢包pipe理器,因为它是更容易维护和脚本对..

关于源码包要记住的事情是,你必须自己看安全邮件列表,并观察上游提供者,以防发现任何重要的错误。 如果你没有准备好升级,当上游决定做出一些改变时,你可能需要做好准备,将修补程序恢复到你目前的系统。 当使用来自分销商的软件包时,您可以对安全问题稍微放松,并相信他们可以根据需要查找并修复安全问题并发布更新。

如果有商业上的理由使用更新的版本,那么你需要决定是否值得的努力和风险。 你只需要确保你准备好处理自己的安全问题。

像David提到的,你真的应该考虑学习如何构build你自己的软件包。 如果您有多个系统,则可以在第二个系统上重复使用正确构build的软件包。 它可以在你的testing盒上重复使用。 这样你就没有在系统a上有一个选项编译的特定软件包,而在系统b上又有一组不同的选项。

如果你有一台服务器,通常可以做所有的事情来完成它的工作,并做一个完整/备份。 只有当你保持你的行动的文件(/ etc / motd是足够好的)。 混乱,混合rpms / cpan / deb /自定义版本并没有那么糟糕,除非你必须复制机器。 例如,我的个人笔记本电脑是一个总转储:)每当我做分离升级somethingsrest,但它是可以接受的 – 我是唯一的用户。 如果你有几台机器执行相同的function,你需要他们执行非常可预测的混合,不同types的安装模式会给你带来很多麻烦。 你必须学习如何build立rpms / deb,或者设置你自己的内部yum版本库。