Ruby 1.9.1がインストールされたchef 11.4.4があります。berkshelf をインストールしたいのですが、Ruby 1.9.2 以降が必要です。ruby 2.0.0-p247 (最新の安定版) を rvm でインストールしました。ナイフコマンドを実行すると...
# knife help
/opt/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find chef (>= 0) amongst [rake-10.1.0, rvm-1.11.3.8] (Gem::LoadError)
from /opt/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
from /opt/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems.rb:1231:in `gem'
from /usr/bin/knife:22:in `<main>'
シェフが組み込まれたRubyのバージョンであるシステムバージョンに戻すと、再び動作します。
# rvm use system
Now using system ruby.
# knife help
Usage: knife SUBCOMMAND (options)
.
.
.
シェフのためにルビーを 2.0.0x にアップグレードする方法をグーグルで検索しましたが、うまくいきませんでした。Ruby のバージョンを簡単に切り替えられる機能が気に入っています。シェフが同じことができれば素晴らしいことですが、最新の安定版または 1.9.2 バージョンの ruby で動作するようにするだけでも素晴らしいでしょう。ありがとう!