下面一起来看一段在CentOS中init.d service 开机时自动启动脚本了,其实以前也介绍过,希望对各位有帮助。
方法一,
编辑 /etc/rc.d/rc.local文件
格式为 程序名 程序路径
例如 a.sh /home/a.sh
第二种方法
只需要将your_prog_name替换为你真正的脚本或执行文件的名称,将prog_path设置为具体的路径即可。
代码如下 |
复制代码 |
# vim /etc/init.d/your_prog_name
#!/bin/bash # # Comments to support chkconfig # chkconfig: - 98 02 # description: your_prog_name service script # # Source function library. . /etc/init.d/functions
### Default variables prog_name="your_prog_name" prog_path="/usr/bin/${prog_name}" pidfile="/var/run/${prog_name}.pid" options="-c your_conf_file"
# Check if requirements are met [ -x "${prog_path}" ] || exit 1
RETVAL=0
start(){ echo -n $"Starting $prog_name: " daemon $prog_path $options RETVAL=$? PID=$(pidof ${prog_path}) [ ! -z "${PID}" ] && echo ${PID} > ${pidfile} echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog_name return $RETVAL }
stop(){ echo -n $"Shutting down $prog_name: " killproc -p ${pidfile} RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog_name return $RETVAL }
restart() { stop start }
case "$1" in start) start ;; stop) stop ;; restart) restart ;; status) status $prog_path RETVAL=$? ;; *) echo $"Usage: $0 {start|stop|restart|status}" RETVAL=1 esac
exit $RETVAL # chmod +x /etc/init.d/your_prog_name # chkconfig your_prog_name on
|