如何禁用不被puppetpipe理的yum版本库

试图将一个非常特殊的环境带入一个更加标准化和pipe理的状态。

在我的用例中,我想禁用所有非Red Hat存储库(由subscription-manager插件提供)。 不过,如果有一个灵活的解决scheme,禁用不是由Puppetpipe理的所有存储库,那将是件好事。

有什么build议么?

这取决于你如何通过puppet提供repoconfiguration。 你把一个文件放在/etc/yum/repos.d还是一个自定义的提供者?

您可以采取措施确保/etc/yum.repos.d/目录已被清除(即保持不被puppet提供的文件),请查看木偶types参考中的文件资源了解详情。 这种方法的问题在于,某些第三方应用程序提供了自己的仓库,并将其打包到在puppet运行时期间安装的rpm:s中。 这在写傀儡的时候很难考虑到。

根据你计划实现yum repoconfiguration的方式,我build议你把/etc/yum.conf中的“reposdir”改成“/etc/yum.repos.managed.d/”,然后把你的puppetconfiguration为repos在那个目录里 这样,yum将不会读取标准repoconfiguration目录中的任何内容,而只能从您的puppet实现提供的内容中读取任何东西。

为什么不让木偶做到这一点?

告诉Puppet仅启用需要启用的存储库并禁用其他所有内容。

另一个想法是,添加一些前缀到你的木偶pipe理回购的名字,所以你可以很容易地识别他们。 然后禁用除RedHat和前缀回购之外的所有内容。