【问题标题】:sudo ./starling start works well but sudo service starling start failssudo ./starling start 运行良好,但 sudo service starling start 失败
【发布时间】:2012-03-24 02:05:44
【问题描述】:

sudo ./starling start 运行良好,但 sudo service starling start 失败

$ sudo ./starling start
 * Starting Starling Server...                  [ OK ] 
$ sudo ./starling stop
 * Stop Starling Server...                  [ OK ] 
$ sudo service starling stop
 * Starting Starling Server...                                        
/home/keating/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in
`to_specs': Could not find starling (>= 0) amongst [minitest-1.6.0,
rake-0.8.7, rdoc-2.5.8] (Gem::LoadError)    from
/home/keating/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in
`to_spec'   from
/home/keating/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems.rb:1229:in
`gem'   from /home/keating/.rvm/gems/ruby-1.9.2-p290/bin/starling:18:in
`<main>'

上面的错误是“找不到 gem starling”

跟随starling文件(位于/etc/init.d,rwxrwxrwx):

set -e
LOGFILE=/var/log/starling/starling.log SPOOLDIR=/var/spool/starling
PORT=22122 LISTEN=127.0.0.1 PIDFILE=/var/run/starling.pid



NAME=starling DESC="Starling"
INSTALL_DIR=/home/keating/.rvm/gems/ruby-1.9.2-p290/bin/
DAEMON=$INSTALL_DIR/$NAME SCRIPTNAME=/etc/init.d/$NAME
OPTS="-d"

. /lib/lsb/init-functions


d_start() {
        log_begin_msg "Starting Starling Server..."
        start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- $OPTS || log_end_msg 1
        log_end_msg 0 }

d_stop() {
        log_begin_msg "Stopping Starling Server..."
        start-stop-daemon --stop --quiet --pidfile $PIDFILE || log_end_msg 1
        log_end_msg 0 }

case "$1" in start) d_start ;; stop) d_stop ;;
restart|force-reload|reload) d_stop sleep 2 d_start ;;
*) echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" exit 3 ;; esac

exit 0

【问题讨论】:

  • 请不要关闭这个问题,我已经努力了好几天了。
  • 嗨 Keating,有趣的问题,但它不属于这个编程 QA 站点,服务器故障会更合适。
  • 如果将 sudo service starling 改为 sudo service ./starling 会怎样?
  • 将 sudo service starling 更改为 sudo service ./starling 时出现同样的错误
  • 好吧,我没试过serverfault,也许这是个机会。

标签: ruby ubuntu rubygems starling-server


【解决方案1】:

starling 是用 rvm 的包装脚本创建的吗? http://rvm.io/integration/god/

【讨论】:

  • 真的谢谢DGM,辛苦了好几天了。
  • 澄清一下,rvm 不仅仅是点击正确的二进制文件——还有 ruby​​ 和 gem 路径也需要设置,而包装脚本就是设置它的东西。
猜你喜欢
  • 2015-03-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-08
  • 1970-01-01
  • 2014-12-20
  • 1970-01-01
  • 2017-01-13
  • 2018-04-11
相关资源
最近更新 更多