编写CentOS 5,6下的服务脚本

前端之家收集整理的这篇文章主要介绍了编写CentOS 5,6下的服务脚本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

概述:CentOS 5和6下的服务启动时,使用的命令都是service 服务名 start方式启动,其实service命令也是调用了/etc/init.d/下的脚本,下面请看具体步骤

实验步骤:

首先准备好服务脚本,下面这一段代码是我之前写的,其类似于我们的服务启动时接受的参数,然后根据你所输入的参数来返回输出内容

  1. [root@localhost~]#vimtestsrv
  2. #!/bin/bash
  3. #function:scripttest
  4. #author:xiaoshui
  5. #[-z$1]&&echo"empty"&&exit
  6. dir=`basename$0`
  7. Dir="/var/lock/subsys/$dir"
  8. var=`echo$1|tr'A-Z''a-z'`
  9. case$varin
  10. start)
  11. if[!-e"$Dir"];then
  12. touch$Dir&&echo"$dirstartsuccess"
  13. else
  14. echo"$diralreadystart"
  15. fi
  16. ;;
  17. stop)
  18. if[!-e"$Dir"];then
  19. echo"$dirisnotstart"
  20. else
  21. rm-f$Dir&&echo"$dirstopsuccess"
  22. fi
  23. ;;
  24. restart)
  25. if[!-e"$Dir"];then
  26. echo"$dirnotstart"
  27. touch$Dir&&echo"$dirrestartsuccess"
  28. else
  29. rm$Dir&&echo"$dirstopped"
  30. touch$Dir&&echo"$dirrestartsuccess"
  31. fi
  32. ;;
  33. status)
  34. if[!-e"$Dir"];then
  35. echo"$dirisstopped"
  36. else
  37. echo"$dirisrunning"
  38. fi
  39. ;;
  40. *)
  41. echo"argueserror,pleaseinputstart|restart|stop|status"
  42. ;;
  43. esac

第一步:将脚本拷贝至/etc/init.d/目录下,并在前面的#!/bin/bash下加上一行#chkconfig:35 12 88

  1. [root@localhost~]#vim/etc/init.d/testsrv
  2. #!/bin/bash
  3. #function:scripttest
  4. #chkconfig:351288
  5. #description:testservice
  6. #author:xiaoshui

加上内容的意义在于,35表示初始在哪个级别下启动,-表示默认都不启动 12 88 表示其表示/etc/rc.d/rc#.d/下面的K和S大头的文件,其含义就是启动的优先级。

第二步:chkconfig --add 服务 将服务加到chkconfig列表中

  1. [root@localhostrc.d]#chkconfig--addtestsrv
  2. [root@localhostrc.d]#chkconfig--list
  3. ......省略........
  4. testsrv0:off1:off2:off3:on4:off5:on6:off
  5. .......省略.....

第三步:使用service命令进行测试

  1. [root@localhostrc.d]#servicetestsrvstart
  2. testsrvstartsuccess
  3. [root@localhostrc.d]#servicetestsrvstop
  4. testsrvstopsuccess
  5. [root@localhostrc.d]#servicetestsrvrestart
  6. testsrvnotstart
  7. testsrvrestartsuccess
  8. [root@localhostrc.d]#servicetestsrvstatus
  9. testsrvisrunning
  10. [root@localhostrc.d]#servicetestsrvstatfsdfsf
  11. argueserror,pleaseinputstart|restart|stop|status

猜你在找的CentOS相关文章