0

我正在使用该网站上的脚本:http: //dysinger.net/2008/10/13/using-amazon-ec2-metadata-as-a-simple-dns/ 我不得不说我是 PHPPerson,我知道几乎没有关于红宝石。无论如何,我在 Amazon Linux 的 ec2 实例上使用这个 scipt,所以我用 yum 安装了 ruby​​ 和 ruby​​gems,我做到了

gem install amazon-ec2

$宝石清单:

*** LOCAL GEMS ***

amazon-ec2 (0.9.17)
rubygems-update (1.8.25)
xml-simple (1.1.2)

看起来不错,但是当我运行脚本时,我得到:

/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require':   no such file to load -- EC2 (LoadError)
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'
from /usr/local/sbin/hosts:2
from /usr/local/sbin/hosts:2:in `each'
from /usr/local/sbin/hosts:2

...为什么?我试着想了一个小时,但仍然不知道。

4

1 回答 1

0

博客文章有点过时了。为了使用 amazon-ec2 gem,您需要require 'AWS',而不是require 'EC2'. 这意味着您必须将第二行更改为:

%w(optparse rubygems AWS resolv pp).each {|l| require l}

您还必须更改此行:

EC2::Base.new(options).describe_instances # etc...

AWS::EC2::Base.new(options).describe_instances # etc...
于 2013-02-17T22:48:52.360 回答