本文来源:http://archive.cnblogs.com/a/2138762/
编写开机启动脚本:
I、nginx开机启动
1、在/etc/init.d/目录下创建脚本
vi /etc/init.d/nginx |
2、更改脚本权限
chmod 775 /etc/init.d/nginx |
3、编写脚本内容
#!/bin/bash |
# nginx Startup script for the Nginx HTTP Server |
# it is v.0.0.2 version. |
# chkconfig: - 85 15 |
# description: Nginx is a high-performance web and proxy server. |
# It has a lot of features, but it's not for everyone. |
# processname: nginx |
# pidfile: /var/run/nginx.pid |
# config: /usr/local/nginx/conf/nginx.conf |
nginxd=/usr/ local /webserver/nginx/sbin/nginx |
nginx_config=/usr/ local /webserver/nginx/conf/nginx.conf |
nginx_pid=/usr/ local /webserver/nginx/logs/nginx.pid |
RETVAL=0 |
prog= "nginx" |
# Source function library. |
. /etc/rc.d/init.d/functions |
# Source networking configuration. |
. /etc/sysconfig/network |
# Check that networking is up. |
[ ${NETWORKING} = "no" ] && exit 0 |
[ -x $nginxd ] || exit 0 |
# Start nginx daemons functions. |
start() { |
if [ -e $nginx_pid ];then |
echo "nginx already running...." |
exit 1 |
fi |
echo -n $ "Starting $prog: " |
daemon $nginxd -c ${nginx_config} |
RETVAL=$? |
echo |
[ $RETVAL = 0 ] && touch /var/ lock /subsys/nginx |
return $RETVAL |
} |
# Stop nginx daemons functions. |
stop() { |
echo -n $ "Stopping $prog: " |
killproc $nginxd |
RETVAL=$? |
echo |
[ $RETVAL = 0 ] && rm -f /var/ lock /subsys/nginx /usr/ local /webserver/nginx/logs/nginx.pid |
} |
reload() { |
echo -n $ "Reloading $prog: " |
#kill -HUP `cat ${nginx_pid}` |
killproc $nginxd -HUP |
RETVAL=$? |
echo |
} |
# See how we were called. |
case "$1" in |
start) |
start |
;; |
stop) |
stop |
;; |
reload) |
reload |
;; |
restart) |
stop |
start |
;; |
status) |
status $prog |
RETVAL=$? |
;; |
*) |
echo $ "Usage: $prog {start|stop|restart|reload|status|help}" |
exit 1 |
esac |
exit $RETVAL |
4、设置开机启动
chkconfig nginxd on |
II 设置mysql开机启动
1、将mysql安装目录下 support-files目录下的mysql.server文件拷贝到/etc/init.d/目录下并改名为mysqld,并更改权限
chmod 775 /etc/init.d/mysqld |
2、设置开机启动
#chkconfig mysqld on |
III、php-fpm开机启动
1、在/etc/init.d/目录下创建脚本
vi /etc/init.d/php-fpm |
2、更改脚本权限
chmod 775 /etc/init.d/php-fpm |
3、编写脚本内容
#!/bin/sh |
# |
# php-fpm - this script starts and stops the php-fpm daemin |
# |
# chkconfig: - 85 15 |
# processname: php-fpm |
# config: /usr/local/php/etc/php-fpm.conf |
set -e |
PATH=/usr/ local /sbin:/usr/ local /bin:/sbin:/bin:/usr/sbin:/usr/bin |
DESC= "php-fpm daemon" |
NAME=php-fpm |
DAEMON=/usr/ local /php/sbin/ $NAME //这里设成自己的目录 |
CONFIGFILE=/usr/ local /php/etc/php-fpm.conf //这里设成自己的目录 |
PIDFILE=/usr/ local /php/var/run/ $NAME .pid //这里设成自己的目录 |
SCRIPTNAME=/etc/init.d/ $NAME //这里设成自己的目录 |
|
# If the daemon file is not found, terminate the script. |
test -x $DAEMON || exit 0 |
d_start(){ |
$DAEMON -y $CONFIGFILE || echo -n " already running" |
} |
d_stop(){ |
kill -QUIT `cat $PIDFILE ` || echo -n " no running" |
} |
d_reload(){ |
kill -HUP `cat $PIDFILE ` || echo -n " could not reload" |
} |
case "$1" in |
start) |
echo -n "Starting $DESC: $NAME" |
d_start |
echo "." |
;; |
stop) |
echo -n "Stopping $DESC: $NAME" |
d_stop |
echo "." |
;; |
reload) |
echo -n "Reloading $DESC configuration..." |
d_reload |
echo "Reloaded." |
;; |
restart) |
echo -n "Restarting $DESC: $NAME" |
d_stop |
# Sleep for two seconds before starting again, this should give the nginx daemon some time to perform a graceful stop |
sleep 2 |
d_start |
echo "." |
;; |
*) |
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload)" >&2 |
exit 3 |
;; |
esac |
exit 0 |
4、设置开机启动
#chkconfig php-fpm on |
至此,大功告成。可以用命令 chkconfig 查看开机启动服务列表 |