日期:2014-05-16  浏览次数:20622 次

linux系统下设置nginx随机启动

1. 编辑启动nginx脚本如下,将脚本保存在指定存放目录(如:/usr/local/nginx/sbin/autoRunNginx):

#!/bin/bash
#用变量存放nginx安装目录
nginxPath='/usr/local/nginx'
#启动nginx
$nginxPath/sbin/nginx -c $nginxPath/conf/nginx.conf

?

2. 在/etc/init.d/目录下编辑启动脚本(脚本名为autoRunNginx)如下:

#!/bin/bash
#用变量存放nginx安装目录
nginxPath='/usr/local/nginx'
$nginxPath/sbin/autoRunNginx

?

3. 将该脚本创建软连接,至/etc/rc5.d/目录,命令如下:

ln -s /etc/init.d/autoRunNginx /etc/rc5.d/S05autoRunNginx

?

注释:

1. linux随机启动的服务程序都在/etc/init.d这个文件夹里,里面的文件全部都是脚本文件

?

2. 在/etc这个文件夹里还有诸如名为rc1.d, rc2.d一直到rc6.d的文件夹,这些都是linux不同的runlevel,
?? 我们一般进入的X windows多用户的运行级别是第5级,也就是rc5.d,在这个文件夹下的脚本文件就是运行第5级时要随机启动的服务程序

?

3. 在每个rc (1-6).d文件夹下的文件其实都是/etc/init.d文件夹下的文件的一个软连接(类似windows中的快捷方式),
?? 也就是说,在 /etc/init.d文件夹下是全部的服务程序,而每个rc(1-6).d只链接它自己启动需要的相应的服务程序

?

4. 了解了上边的内容,接下来就动手写脚本,一共需要两个主脚本:
??? a. 第一个是/root/temp/autoRunNginx,是最终需要执行的脚本
??? b. 第二个是/etc/init.d/autoRunNginx,这个算是又将第一个脚本包装了一次
??? 主脚本完成了,接下来需要在rc5.d目录下创建一个软连接,也就是最终的S05autoRunNginx

?

5. 在rc5.d目录下的软连接的名字,还需要遵守以下规则:
??? a. 在rc5.d里,每个链接的名字都是以大写的S或者K开头的,S代表要启动时执行的程序,而K代表启动时不执行的程序
??? b. 在S或K后边的数字(如01,02,05)表示优先级,01最优化,02其次,以此类推

?