执行时遇到的问题

时间:2025-03-01 17:01:13

是Redis Cluster的一个常用工具。下面记录了执行此命令时遇到的一系列错误。

 create --replicas 1  127.0.0.1:7379 127.0.0.1:7380 127.0.0.1:7381 127.0.0.1:7382 127.0.0.1:7383 127.0.0.1:7384
/usr/bin/env: ruby: 没有那个文件或目录

看来是ruby没有安装,于是执行:

yum install -y ruby		//安装ruby
 create --replicas 1  127.0.0.1:7379 127.0.0.1:7380 127.0.0.1:7381 127.0.0.1:7382 127.0.0.1:7383 127.0.0.1:7384
:24:in `require': no such file to load -- rubygems (LoadError)
        from src/:24

ruby安装成功,但是rubygem没有安装,所以导致了上述错误,于是继续:

yum install -y rubygems		//安装rubygem
 create --replicas 1  127.0.0.1:7379 127.0.0.1:7380 127.0.0.1:7381 127.0.0.1:7382 127.0.0.1:7383 127.0.0.1:7384
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- redis (LoadError)
        from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
        from src/:25

rubygem安装成功,但是新的错误又出现了。google了一下,发现是ruby版本太低了。yum安装的版本是1.8.7,但是redis需要的是1.9.3或者更高,于是升级ruby版本到1.9.3.

curl -L  | bash -s stable
source /etc//		//安装rvm
rvm install 1.9.3			//安装ruby1.9.3
rvm use 1.9.3 --default			//设置ruby1.9.3为默认的ruby,因为还安装有1.8.3
gem install redis
ERROR:  Could not find a valid gem 'redis' (>= 0), here is why:
          Unable to download data from / - Errno::ETIMEDOUT: Connection timed out - connect(2) (/latest_specs.4.)
ERROR:  Possible alternatives: redis

又遇到新的错误了,看来是连接gem源出错了,于是增加新的gem源:

gem sources -a /		//添加淘宝的gem源

然后”gem install redis“执行成功,之后的” create ......“也ok了。

BTW:其实ruby1.8.7也支持,也就是说在ruby1.8.7上执行” create ......“时出现的错误是由于没有安装针对redis的gem包,所以只要成功执行”gem install redis"即可。不过不建议使用ruby1.8.7,因为这个版本有点老了,使用rvm安装ruby1.8.7时,提示对此版本已经不提供支持了。