带RVM的Unicorn安装脚本-哪个可执行文件?

| 我正在尝试将unicorn作为gem安装(在Ubuntu上)为unicorn运行的初始化脚本: /home/tim/.rvm/gems/ruby-1.9.2-p180@polco/bin/unicorn 我的初始化脚本是: #! / bin / sh ###开始初始化信息 #提供:独角兽 #必需的开始:$ local_fs $ remote_fs $ network $ syslog #必需-停止:$ local_fs $ remote_fs $ network $ syslog #默认开始:2 3 4 5 #默认停止:0 1 6 #简短说明:启动独角兽Web服务器 #说明:启动独角兽 ###结束初始化信息 路径= / usr / local / sbin:/ usr / local / bin:/ sbin:/ bin:/ usr / sbin:/ usr / bin 达蒙=/home/tim/.rvm/gems/ruby-1.9.2-p180@polco/bin/unicorn DAEMON_OPTS = \“-c /home/deployer/shop/current/unicorn.rb -E production -D \” NAME = unicorn_rails DESC = unicorn_rails PID = /家庭/部署者/商店/共享/pids/unicorn.pid 情况为“ $ 1”   开始)     echo -n \“开始$ DESC:\”     $ DAEMON $ DAEMON_OPTS     回显\“ $ NAME。\”     ;;   停)     echo -n \“停止$ DESC:\”         kill -QUIT`cat $ PID`     回显\“ $ NAME。\”     ;;   重新开始)     echo -n \“重新启动$ DESC:\”         kill -QUIT`cat $ PID`     睡觉1     $ DAEMON $ DAEMON_OPTS     回显\“ $ NAME。\”     ;;   重新加载)         echo -n \“正在重新加载$ ​​DESC配置:\”         kill -HUP`cat $ PID`         回显\“ $ NAME。\”         ;;   *)     echo \“用法:$ NAME {开始|停止|重新启动|重新加载} \”>&2     1号出口     ;; 埃萨克 出口0 对于rvm可执行文件,整个操作对我来说似乎很脆弱。 rvm是否有类似$ CURRENT_RVM_PATH的内容?     
已邀请:
好。我为我解决了这个问题。不管我是否是root,我都不再关心,并决定以“ \ passenger \”用户身份运行它,而我需要运行unicorn_rails。 这是我的启动脚本: #! / bin / sh ###开始初始化信息 #提供:独角兽 #必需的开始:$ local_fs $ remote_fs $ network $ syslog #必需-停止:$ local_fs $ remote_fs $ network $ syslog #默认开始:2 3 4 5 #默认停止:0 1 6 #简短说明:启动独角兽Web服务器 #说明:启动独角兽 ###结束初始化信息 路径= / usr / local / sbin:/ usr / local / bin:/ sbin:/ bin:/ usr / sbin:/ usr / bin #DAEMON=/home/tim/.rvm/gems/ruby-1.9.2-p180@polco/bin/unicorn DAEMON = /家庭/乘客/.rvm/gems/ruby-1.9.2-p180/bin/unicorn_rails DAEMON_OPTS = \“-c /home/passenger/polco/current/config/unicorn_tacitus.rb -E production -D \” NAME = unicorn_rails DESC = unicorn_rails PID = /家庭/乘客/ polco /共享的/pids/unicorn.pid 情况为“ $ 1”   开始)     echo -n \“开始$ DESC:\”     $ DAEMON $ DAEMON_OPTS     回显\“ $ NAME。\”     ;;   停)     echo -n \“停止$ DESC:\”         kill -QUIT`cat $ PID`     回显\“ $ NAME。\”     ;;   重新开始)     echo -n \“重新启动$ DESC:\”         kill -QUIT`cat $ PID`     睡觉1     $ DAEMON $ DAEMON_OPTS     回显\“ $ NAME。\”     ;;   重新加载)         echo -n \“正在重新加载$ ​​DESC配置:\”         kill -HUP`cat $ PID`         回显\“ $ NAME。\”         ;;   *)     echo \“用法:$ NAME {开始|停止|重新启动|重新加载} \”>&2     1号出口     ;; 埃萨克 出口0 要执行此操作-我现在有一个简单的capistrano任务:   desc“重新启动独角兽”   任务:restart,:roles =>:app,:except => {:no_release => true}做     运行\“#{current_path} / unicorn_exec restart \”   结束   在\“ deploy:restart \”,\“ unicorn:restart \”之后 我的最后一个问题是为什么我必须重新启动unicorn_rails。我以为可以通过以下方式重新加载:kill -HUP
cat $PID
,但是一切只有在我重新启动后才能起作用。     
由于Google可能会为其他人找到这个问题,因此这是我在3台不同服务器上使用的我的独角兽重启脚本。我只需要添加USR2该回购协议称为eunic,稍后我可能会对此进行介绍。 话虽如此,这是另一种方式。     

要回复问题请先登录注册