如何在CentOS 5.2上启动mongrel_cluster和Ferret DRb服务器?

我遵循这个CentOS 5.2 Mongrel Cluster教程 ,在CentOS 5.2上重启时启动mongrel_cluster。 但是,我必须在重启时手动启动mongrel_cluster。

由于这不起作用,我遵循build立Mongrel作为服务的build议, 并在Centos 5.2上自动启动它 。 关键位是:

chkconfig -add mongrel_cluster chkconfig –level 345 mongrel_cluster on 

再次…这不工作:我仍然必须在启动时手动启动mongrel_cluster。 最后,我尝试将“@reboot …”添加到我的crontab中,如下所示:

 RAILS_ROOT=/path/to/root # Restart Ferret Drb server on host reboot: @reboot ${RAILS_ROOT}/script/ferret_server --root=${RAILS_ROOT} -e production start # Restart rails apps (via Mongrel) on host reboot: @reboot /etc/init.d/mongrel_cluster start 

但是再次…我必须手动重新启动Mongrel和Ferret!

最后,我已经按照如何启动DRB服务器重新启动(Linux)的说明,但我必须手动启动鼬DRb在重新启动…

这是我第一次系统pipe理员的演出,所以我甚至不知道要查看哪些日志文件…如果你需要更多的信息来帮助,请帮助我,让我知道在哪里看!

另一个问题的答案给了我一个似乎已经奏效的主意。 我已经将以下内容添加到我的/etc/rc.local文件中:

 # ... and restart Mongrel su - MyUserName -c "/etc/init.d/mongrel_cluster start" # ... and restart ferret su - MyUserName -c "cd /path/to/rails_root && ./script/ferret_server --root=/path/to/rails_root -e production start" 

…和w </s>! Mongrel&Ferret DRb服务器似乎重启!

是否有一个相应的脚本来调用系统closures(即正确地杀死mongrel_cluster&ferret_server)?

Pete – 你可以在你的rc脚本中使用类似的命令来停止mongrel_cluster:

 su - YourUserName -c "/etc/init.d/mongrel_cluster stop" 

这是标准的initrc脚本处理。 你通常会发现'/etc/init.d/ scriptname '至less可以通过' start''stop '或者' restart '来进行(最后一个命令几乎总是试图运行脚本的停止部分由启动脚本。

但是,你不应该这样做。 当系统closures时,所有正在运行的进程都会发送一个终止信号,这意味着在closures时它们应该正常终止。 你可以在terminaloutpout上看到这个closures,虽然我不确定它是否被默认logging在CentOS上。 (除非杂种或雪貂被configuration为制作日志)

希望有所帮助。