本文來源: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 查看開機啓動服務列表 |