当前位置:   article > 正文

Solaris的自启动

solaris开机自动 启动

要写一个自启动脚本, 以前用red hat, 公司现在用solaris, 就网上查找了一下solaris的资料,关于solaris的启动,是这样的:

 

    在/etc/的目录里,可以看到rc1.d,rc2.d,rc3.d,rc0.d,rcS.d 和 init.d这些目录,在init.d的目录下放的脚本,会在系统启动时或运行级别改动是,由系统的init进程执行。

    在以rc开头的文件夹里放置的脚本都会以K或S开头命名,命名的规则是 [K/S] + [nn] + [scriptname], K表示kill,S表示start, nn表示一个2位数字的序号,scriptname就是脚本的名字。举个例子,当运行级别由2改动到3的时候,系统会按照nn的顺序,以stop参数执行rc3.d下所有K开头的脚本,然后按照nn的顺序,以start参数执行rc3.d下所有S开头的脚本。

    初步了解上面的内容后,就写一个简单的例子,用来自启动tomcat, 脚本如下:

 

#!/bin/sh
#
#write by zhouxiaobo 11/11/21

TOMCAT_HOME="/opt/apache/apache-tomcat-6.0.10"
start(){
  echo "Starting Apache Tomcat 6.0.10"
  su apache -c "$TOMCAT_HOME/bin/startup.sh"
  echo "Apache Tomcat 6.0.10 already run."
}

stop(){
  echo "Stopping Apache Tomcat 6.0.10"
  su apache -c "$TOMCAT_HOME/bin/shutdown.sh"
  echo "Apache Tomcat 6.0.10 already stop."
}

case "$1" in
start)
  start
  echo ;;
stop)
  stop
  echo ;;
*)
  echo $"Usage: $0 {start|stop}"
  exit 1
esac

exit 0

 

   文件命名为tomcatrun,并放在/etc/init.d目录下,执行chmod +x tomcatrun 改变权限。

   然后,将该文件link到rc目录下:

 

   ln -s /etc/init.d/tomcatrun /etc/rc0.d/K99tomcatrun

   ln -s /etc/init.d/tomcatrun /etc/rc3.d/S99tomcatrun

 

   在rc0级别先关闭,rc3级别再启动。这个脚本只是一个例子,还是很不健壮的,自启动脚本应该写的很健壮,比如上面还有加上,启动失败的处理, 启动时tomcat已经运行的判断等等......

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/591814
推荐阅读
  

闽ICP备14008679号