CentOS 7にはRuby 2.0.0.353-20.el7が付属しています。そこにパペットをインストールしようとすると、エラーが発生します。最初に実行します。
rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
rpm -ivh http://dl.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-1.noarch.rpm
それらは正常に動作します。それから私はこれで問題に遭遇します:
[root@localhost /]# yum install puppet
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.beyondhosting.net
* epel: mirrors.mit.edu
* extras: mirror.tocici.com
* updates: centos.chi.Host-engine.com
Resolving Dependencies
--> Running transaction check
---> Package puppet.noarch 0:3.6.2-3.el7 will be installed
--> Processing Dependency: hiera >= 1.0.0 for package: puppet-3.6.2-3.el7.noarch
--> Processing Dependency: facter >= 1.6.6 for package: puppet-3.6.2-3.el7.noarch
--> Processing Dependency: rubygem(rgen) for package: puppet-3.6.2-3.el7.noarch
--> Processing Dependency: Ruby(shadow) for package: puppet-3.6.2-3.el7.noarch
--> Processing Dependency: Ruby(augeas) for package: puppet-3.6.2-3.el7.noarch
--> Running transaction check
---> Package facter.x86_64 1:2.2.0-1.el6 will be installed
--> Processing Dependency: pciutils for package: 1:facter-2.2.0-1.el6.x86_64
---> Package hiera.noarch 0:1.3.4-1.el7 will be installed
---> Package Ruby-augeas.x86_64 0:0.5.0-1.el7 will be installed
---> Package Ruby-shadow.x86_64 1:2.2.0-2.el6 will be installed
--> Processing Dependency: libruby.so.1.8()(64bit) for package: 1:Ruby-shadow-2.2.0-2.el6.x86_64
---> Package rubygem-rgen.noarch 0:0.6.6-2.el7 will be installed
--> Running transaction check
---> Package pciutils.x86_64 0:3.2.1-4.el7 will be installed
---> Package Ruby-shadow.x86_64 1:2.2.0-2.el6 will be installed
--> Processing Dependency: libruby.so.1.8()(64bit) for package: 1:Ruby-shadow-2.2.0-2.el6.x86_64
--> Finished Dependency Resolution
Error: Package: 1:Ruby-shadow-2.2.0-2.el6.x86_64 (puppetlabs-deps)
Requires: libruby.so.1.8()(64bit)
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
[root@localhost /]#
Ruby 1.8が必要です。Ruby 2.0はデフォルトでインストールされており、利用可能な最も古いバージョンのようです。何が不足していますか?
EL6のpuppetlabsリポジトリをインストールしてから削除し、EL7のリポジトリで置き換えたようです。しかし、yumはまだEL6リポジトリのデータをキャッシュしています。片付けてもう一度やり直してください。
yum clean all