0

VPS に Chef Solo をインストールしようとしています。Ruby をインストールし、Chef gem のインストール コマンドを実行しましたが、Chef のバージョンを確認すると、ファイルをロードできないと表示されます。Railscast のトピックhttp://railscasts.com/episodes/339-chef-solo-basics?view=asciicastに従っていますが、準備段階として rbenv と Ruby 2.0.0 もインストールしました。

このエラーの原因を特定できますか?

  root@Chef2:~# gem install chef ruby-shadow --no-ri --no-rdoc
    Successfully installed chef-11.4.4
    Building native extensions.  This could take a while...
    Successfully installed ruby-shadow-2.2.0
    2 gems installed
    root@Chef2:~# rbenv rehash
    root@Chef2:~# chef-solo -v
    /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': cannot load such file -- rubygems/format (LoadError)
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/chef-11.4.4/lib/chef/provider/package/rubygems.rb:34:in `<top (required)>'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/chef-11.4.4/lib/chef/providers.rb:60:in `<top (required)>'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/chef-11.4.4/lib/chef.rb:25:in `<top (required)>'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/chef-11.4.4/lib/chef/application/solo.rb:19:in `<top (required)>'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /root/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/chef-11.4.4/bin/chef-solo:23:in `<top (required)>'
        from /root/.rbenv/versions/2.0.0-p195/bin/chef-solo:23:in `load'
        from /root/.rbenv/versions/2.0.0-p195/bin/chef-solo:23:in `<main>'
4

3 に答える 3

0

Chef 11 は Chef の最新バージョンであり、現在は ruby​​ のコピーが組み込まれています。次のドキュメントを参照してください。

http://wiki.opscode.com/display/chef/Installing+Chef+Client+and+Chef+Solo

于 2013-07-19T17:54:47.133 に答える
0

元のポスターは、chef 11.4.4 の CHEF-3933 のような ruby​​-2.0/rubygems-2.0 の問題に遭遇していた可能性があると思います。これらは現在修正されています。Chef 11.10.0 は ruby​​-2.1 + ruby​​gems-2.2 をサポートします

オムニバス インストーラーがある場合、Gem のインストールはお勧めできません。Railscastは現在非常に時代遅れです。インストールは次の方法で行う必要があります。

curl -L https://www.opscode.com/chef/install.sh | bash -s

于 2014-02-17T20:06:09.293 に答える
0

使用している ruby​​gem のバージョンは何ですか?

rubygems 1.8.25 を使ってみる

于 2014-02-17T14:36:35.617 に答える