5

puppet ノードをセットアップしようとしていますが、rubygems が動作していないようです。

独自のバイナリ(/usr/lib/ruby/gems/1.8/gems/facter-1.5.8/bin/facter)を介してcliでfacterを実行すると、正常に動作しますが、インストールされたバイナリを介して実行するとrubygems (/usr/bin/facter) の場合、以下がスローされます。

/usr/lib/ruby/1.8/facter/uptime.rb:11: undefined method `get_uptime' for Facter::Util::Uptime:Module (NoMethodError)
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:73:in `load'
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:73:in `load_file'
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:38:in `load_all'
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:33:in `each'
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:33:in `load_all'
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:30:in `each'
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:30:in `load_all'
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/collection.rb:90:in `load_all'
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter.rb:95:in `to_hash'
        from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/bin/facter:137
        from /usr/bin/facter:19:in `load'
        from /usr/bin/facter:19

rubygems を削除して再インストールし、gem を再インストールしようとしましたが、何もうまくいかないようです。

パペットを実行しようとすると同じエラーがスローされるため、何かがどこかにキャッシュされていると想定しています。

何か案は?

4

1 に答える 1

8

facterrubygems でインストールする前に、rubygems の外部でインストールした可能性があるようです。

スタック トレースの最後/usr/lib/ruby/1.8/facter/uptime.rbのファイルは、/usr/lib/ruby/gems/1.8/gems/facter-1.5.8.

のファイル/usr/lib/ruby/1.8/facterが実際に古いバージョンの factor であるかどうかを確認する必要があります。そうである場合は、それらを削除するか、別の名前のディレクトリに移動すると、問題が解決するはずです。

于 2010-09-26T18:02:45.310 に答える