在执行puppet的时候,出现下面的问题,大家遇到过吗?
系统环境:
OS:Red Hat Enterprise Linux Server release 5.8 (Tikanga) x86_64
ruby版本:ruby 1.8.5 (2006-08-25) [x86_64-linux]
安装的是 puppet-3.7.4.tar.gz
现象如下:
# puppet
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- securerandom (LoadError)
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/util.rb:12
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet.rb:8
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:12
from /usr/bin/puppet:7:in `require'
from /usr/bin/puppet:7
我打开util.rb文件,找到报错的第12行,需要加载一个叫securerandom的模块,但我不知道这个依赖的模块怎么找到?朋友们有遇到过的吗?给个建议
# vi /usr/lib/ruby/site_ruby/1.8/puppet/util.rb
12 require 'securerandom'
我自己解决了,问题原因在于puppet-3.7.4版本需要支持的ruby版本比较高,Redhat5.8系统提供的ruby根本无法满足要求。即ruby-1.8.5版本无法成功安装puppet-3.7.4版本,ruby-1.8.5版本根本没有securerandom.rb文件,所以puppet报了很多require的错误。
另外,在Redhat5.8系统上面安装新版本的ruby2.0版本非常费劲,编译各种错误。建议还是使用Redhat6吧,如今6是主流了,看来我也得重新安装操作系统了。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。