お世話になっています。
CentOS 6.7 上で、以下のサイトにあるrubyスクリプト(aws_health_check.rb)を実行させ、
Zabbixで監視をさせてみたかったのですが、
feedtoolsをインストールしても、以下のエラーになり、スクリプトが実行できません。
このエラーの解決するにはどうしたらよいのでしょうか。
調べたところ、iconvはruby2.0から廃止されたらしかったので、
ruby1.9.3をインストールした環境を作りましたが、別のエラーで実行できませんでした。
http://d.hatena.ne.jp/ike-dai/20130119/1358566620
・手動実行時エラー内容(ruby2.0)
~~~
./aws_health_check.rb
The Iconv library does not appear to be installed properly. FeedTools cannot function properly without it.
Unexpected LoadError, it is likely that you don't have one of the libraries installed correctly.
/usr/local/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require': cannot load such file -- iconv (LoadError) from /usr/local/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in
require'
from /usr/local/lib/ruby/gems/2.2.0/gems/feedtools-0.2.29/lib/feed_tools.rb:104:in <top (required)>' from /usr/local/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:128:in
require'
from /usr/local/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:128:in rescue in require' from /usr/local/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:39:in
require'
from ./aws_health_check.rb:4:in `<main>'
~~~
・zabbix実行時エラー内容(ruby2.0)
~~~
sudo -u zabbix ./aws_health_check.rb
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require': no such file to load -- feed_tools (LoadError) from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
require'
from ./aws_health_check.rb:4
~~~
・手動実行時エラー内容(ruby1.9.3)
~~~
./aws_health_check.rb
/usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in require': iconv will be deprecated in the future, use String#encode instead. /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in
require': /usr/local/lib/ruby/gems/1.9.1/gems/feedtools-0.2.29/lib/feed_tools/helpers/uri_helper.rb:43: invalid multibyte char (US-ASCII) (SyntaxError)
/usr/local/lib/ruby/gems/1.9.1/gems/feedtools-0.2.29/lib/feed_tools/helpers/uri_helper.rb:43: invalid multibyte char (US-ASCII)
/usr/local/lib/ruby/gems/1.9.1/gems/feedtools-0.2.29/lib/feed_tools/helpers/uri_helper.rb:43: syntax error, unexpected $end, expecting ')'
if IDN::Idna.toASCII('http://www.詹姆斯.com/') ==
^
from /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in require' from /usr/local/lib/ruby/gems/1.9.1/gems/feedtools-0.2.29/lib/feed_tools/helpers/retrieval_helper.rb:25:in
<top (required)>'
from /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in require' from /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in
require'
from /usr/local/lib/ruby/gems/1.9.1/gems/feedtools-0.2.29/lib/feed_tools/feed.rb:27:in <top (required)>' from /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in
require'
from /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in require' from /usr/local/lib/ruby/gems/1.9.1/gems/feedtools-0.2.29/lib/feed_tools.rb:170:in
<top (required)>'
from /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:60:in require' from /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:60:in
rescue in require'
from /usr/local/lib/ruby/1.9.1/rubygems/custom_require.rb:35:in `require'
~~~
ruby2.0 の環境は以下の通りです。
※ruby1.9.3 の環境は今確認できてません。
cat /etc/redhat-release
CentOS release 6.7 (Final)
ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux]
find / -name feed_tools
/usr/local/lib/ruby/gems/2.2.0/doc/feedtools-0.2.29/ri/lib/feed_tools
/usr/local/lib/ruby/gems/2.2.0/gems/feedtools-0.2.29/lib/feed_tools
gem -v
2.4.5.1
gem list
*** LOCAL GEMS ***
activemodel (4.2.4)
activerecord (4.2.4)
activesupport (4.2.4)
arel (6.0.3)
bigdecimal (1.2.6)
builder (3.2.2)
feedtools (0.2.29)
i18n (0.7.0)
io-console (0.4.3)
json (1.8.1)
minitest (5.4.3)
power_assert (0.2.2)
psych (2.0.8)
rake (10.4.2)
rdoc (4.2.0)
test-unit (3.0.8)
thread_safe (0.3.5)
tzinfo (1.2.2)
uuidtools (2.1.5)
※rubyとfeed_toolsのインストールを以下の手順で実施したのですが、手順がおかしかったのでしょうか。
・ruby確認
yum list installed | grep ruby
※表示なし
・必要パッケージのインストール
yum -y install gcc zlib-devel openssl-devel sqlite sqlite-devel mysql-devel readline-devel libffi-devel
・ソースコードのダウンロード
cd /usr/local/src
wget https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2. …
tar zxvf ruby-2.2.3.tar.gz
cd ruby-2.2.3
./configure
make
make install
・rubyバージョン確認
ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux]
・シンボリックリンク作成
ln -s /usr/local/bin/ruby /usr/bin/ruby
・feedtoolsインストール
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/01/19 22:41
2016/01/20 00:41