在linux开发中我们经常会遇到将某个服务程序开机时自动启,那么我们可以参考如下设置:
这里我们假定让/usr/bin/boa服务,也就是boa服务器开机时自启动
方法一:建立软链接
添加boa服务程序脚本到/etc/init.d文件夹下
/etc/init文件夹下是服务程序的配置文件,后缀为.conf
/etc/init.d文件夹下为对应的服务程序脚本
/etc/rcS.d以及rc0.d-rc6.d为链接文件,链接到/etc/init.d文件夹下的相应的服务程序shell脚
本,主要是为了与unix系统的兼容,其中0-6为程序运行级别,因此我们希望开机启动boa服务程序,只需要在/etc/init.d目录下新建boa.sh可执行脚本,代码如下:
#!/bin/sh
/usr/bin/boa
第一行是声明用什么终端运行这个脚本,第二行就是要运行的命令
然后在/etc/rc*.d目录下建立软链接即可:
$ln –s /etc/init.d/boa /etc/rc3.d/S100boa
注释:
Rc3.d里,每个链接的名字都是以S或者K开头的,S开头的表示是系统启动是要随机启动的,K开头的是不随机启动的。这样,你就可以知道,如果我要哪个服务随机启动,就把它名字第一个字母K改成S就可以了,当然,把S改成K后,这个服务就不能随机启动了。因此,我这个链接还要起名为SXXX,这样系统才能让它随机启动
方法二:修改/etc/rc.local
Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,可以使init自动启动其它程序。例如:编辑 /etc/rc.local 文件,在文件最末加上一行"/usr/bin/boa",可以在开机启动后直接进入运行boa。
方法三:命令chkconfig修改
# chkconfig boa.sh on
Chkconfig 默认会启动2345四个级别,如果想自定义则用执行如下命令
#chkconfig –level 23 boa on
查看服务启动状态:
#chkconfig –list boa
如果我们想通过手动启动某个服务,可以是 /etc/init.d 服务名 start 或者
services 服务名 start