2013-04-13 72 views
1

我非常沮喪地嘗試編寫一個相當簡單的Cap腳本,它將停止並啓動我在遠程框上運行的一些守護程序進程。Capistrano「do nohup python」works,「do nohup ruby​​」does not

本質,

run "for I in {1..40}; do nohup python ~/pydaemon.py >/dev/null 2>/dev/null & done" 

完美。我輸入密碼並執行,然後選中該框,並且有40個守護進程正在運行。

run "for I in {1..40}; do nohup ruby ~/rbdaemon.rb >/dev/null 2>/dev/null & done" 

永遠不會創建ruby腳本的守護進程實例。在蓋方面,它告訴我

"executing "for I in {1..40}; do nohup ruby ~/rbdaemon.rb >/dev/null 2>/dev/null & done"" 

,沒有錯誤,但是當我檢查框沒有任何運行。

我已經從SSH登錄運行ruby命令,它工作正常。我錯過了什麼,我應該嘗試什麼,等等?多謝你們。反對這樣做 -

回答

1

嘗試將ruby守護程序的stdout和stderr重定向到文件而不是/ dev/null。這可能是告訴你什麼是錯的!

+0

謝謝傑里米幫我找到答案:)原來,當我運行Cap任務時,RVM沒有正確設置,所以遠程盒子不知道在哪裏找到我的寶石。 – deakolt