我至less有5个开发服务器(开发,质量保证,分期)有PHP和其他包从源编译的软件包。 我想删除所有这些,并用yum包更新这些服务器。 如果我可以通过傀儡或厨师做到这一点,将是伟大的。 所以:
我如何开始寻找自编的软件包
没有什么好的方法可以保证你能得到所有的东西
但是没有什么好的办法可以保证你能得到所有的东西
并删除它们
这是不平凡的,除非包裹有自己的方式去除。 您可以尝试重新编译软件包,然后使用chroot重新安装它们,或者如果DESTDIR = drective
mkdir /tmp/package make && make install DESTDIR=/tmp/package
然后查看/ tmp / package或chroot树的内容以获取文件列表,然后可以使用该列表从主文件系统树中删除文件。 这是依赖于你知道你用来configuration构build的选项。
稍后通过yum在服务器上安装相同包的更新版本?
yum install packagename
木偶/厨师是一个很好的select来模拟服务器的变化?
此时您的最佳解决scheme是重新开始。 select一个configurationpipe理解决scheme,并使用它来build立一致的系统
然后安装你的基本操作系统
不幸的是,清理这种情况并不容易。 无论如何,以下几点:
假如你有编译的源代码(我倾向于保留它们),今天的许多软件包都支持卸载目标。 只要make uninstall并希望正确的文件将被删除。 如果你周围没有他们,重新编译并安装,然后卸载。 只要确保你有相同的版本。
如果这不起作用,您可能需要尝试安装发行版软件包,并使用rpm来手动search不属于任何软件包的文件。 只要确保所有以前的文件被覆盖。