在过去的一年里,我一直在pipe理20-30个cPanel的主机,使用Puppet,Nagios和Munin进行一般的监视/趋势,但是我必须使用很多方法来部署/pipe理诸如configuration之类的东西。
对于那些不熟悉cPanel的人来说,它会为yum排除诸如perl *,ruby *等等。 这导致我能够通过Puppet(以及通过Packagetypes)在一个新的服务器上引导监视,这是由于与通过Yum安装的一堆冲突导致的问题。
现在我可以创build一个自定义的RPM的一切,并从规范文件中删除某些依赖关系,但我想避免这一点,如果可能的话。 有没有人有任何build议的function方式来pipe理这种环境?
目前我通过RPM安装Puppet,Facter和Munin,并使用–nodeps等方式强制安装(因为它们已经安装,只是没有Yum想要的)。 Nagios我现在从源手动安装(可能会创buildRPM的,但是我想先解决这个一般问题)。
使用cPanel的ruby实例 – / scripts / installruby – 从那里你可以通过gem或通过源代码安装。
Well Munin可以通过WHM插件安装程序安装在:
主页>> cPanel >>pipe理插件
只需点击“安装并保持更新”即可安装。
Yum应该能够在yum.conf的exclude=
部分中安装具有依赖关系的包,只要它们在RPM数据库和适当的版本中即可。 已知cPanel系统经常会损坏RPM数据库。 尝试重新构build它,然后再次尝试安装。 重buildRPM数据库:
删除/ var / lib / rpm / __ db *文件以清除死RPM过程中的陈旧锁:
cd /var/lib/rpm rm __db*
重buildRPM数据库:
rpm --rebuilddb
有什么区别?
如果没有,是否安装了缺失的依赖关系? 检查使用:
rpm -qa
要么:
rpm -qi [packagename]
cPanel通过RPM安装ruby,所以这应该列出,并应通过yum安装时解决依赖项。 cPanel不会安装PHP,所以如果这是一个缺less的依赖关系,那么这是另一个问题。
这个问题是与RPM自动depsolving。 不幸的是,cPanel不使用基于RPM的软件包/向Yum添加了一些东西,排除/安装非标准区域的某些东西(就RHEL而言),导致RPM / Yum问题出现问题。
我find的解决scheme是build立我自己的RPM,并没有自动depsolve。