我正在运行CentOS 6.2 – 我刚将一些应用程序迁移到故障转移服务器,并将其init脚本复制到/etc/init.d中。
我已经使它们可执行,将它们添加到chkconfig,使用chkconfig -add,设置它们的级别,确保它们驻留在/etc/rc.d/中 – 确保我可以从rc2.d执行它们。在两台服务器上都是一样的。 它们也以与主服务器上相同的顺序运行
然而,重启后,他们不会启动。 有任何想法吗?
罪犯是这样的:
jetty 0:off 1:off 2:on 3:on 4:on 5:on 6:off smart 0:off 1:off 2:on 3:on 4:on 5:on 6:off /etc/init.d: -rwxr-xr-x. 1 root root 14456 Mar 13 20:21 jetty -rwxrwxrwx. 1 root root 5829 Mar 29 09:58 smart /etc/rc.d/rc3.d lrwxrwxrwx. 1 root root 15 Mar 29 19:21 S99jetty -> ../init.d/jetty lrwxrwxrwx. 1 root root 11 Mar 26 17:12 S99local -> ../rc.local lrwxrwxrwx. 1 root root 15 Mar 29 19:21 S99smart -> ../init.d/smart
我已经检查过了,并且正在运行级别3.我已经检查过他们的日志,但是没有迹象表明它们已经启动了。 我可以轻松地手动启动它们 – 其他服务正常启动。
我完全没有想法。
我想我可能已经解决了。
出于某种原因,init脚本没有被复制到/etc/rc.d/init.d! 我已经做了符号链接,现在chkconfig正在挑选它们,其中大多数现在开始启动..
我是CentOS 6.5和Jetty 9.1.0.v20131115的用户。 我遇到了与你所描述的相同的症状。
我可以通过分别更新jetty.sh ,分别修改/etc/init.d/jetty和/etc/rc.d/init.d/jetty来解决我的问题。
在此脚本中,在NAME定义中,将+更改为* ,即更改
NAME=$(echo $(basename $0) | sed -e 's/^[SK][0-9]+//' -e 's/\.sh$//')
至
NAME=$(echo $(basename $0) | sed -e 's/^[SK][0-9]*//' -e 's/\.sh$//')
jetty.sh脚本曾经有一个chkconfig相关的错误。 这个bug在提交中得到了修复 。
背景:在越野车版本中, NAME环境variables被设置为jetty99 , 来自chkconfigconfiguration的99 。
该脚本通常命名为jetty ,因此bug版本将查找名为/etc/default/jetty99的configuration文件,而不是正确的/etc/default/jetty 。
你可以使用ntsysv命令检查状态吗? 确保你需要的守护进程被选中。
使用/sbin/service daemonname start守护进程是否正常/sbin/service daemonname start ?