在linux下设置一个服务(或应用)开机自动启动有两类办法
第一类:利用开机的时候,linux会自动执行某个文件里面的命令。那么把启动某个服务的命令,加到这个文件里面去。
比如会执行/etc/rc.local里面的命令。把那个服务启动的命令加入到这个文件中去即可。
当初公司服务器上配置svn开机自动启动,就是这样子操作的:
vi /etc/rc.local
里面内容如下:
/etc/rc.d/init.d/svn.sh
注:rc.local中填写脚本的路径,就会执行这个脚本。svn.sh是一个shell脚本,里面其实就是启动svn的命令。
大家经常使用的 rc.local是习惯方面,也可以把命令写到其他文件中去,只要是开机会执行的文件即可。
还有以下一些文件,开机也是会自动执行的(加到下面的文件中去也是同样效果):
/etc/rc.sysinit
/etc/inittab 此文件记录了设置init tree顺序
/etc/profil
第二类:使用chkconfig实现
chkconfig –level 345 sphinx on
这种方式设置3、4、5级别下是开启的。
使用chkconfig来实现,需要专门编写一个脚本文件放到/etc/rc.d/init.d/目录下面。也就是要先实现service能够调用。
具体办法,我总结了一篇关于service实现的文章:http://www.cnblogs.com/wangtao_20/p/3645690.html
里面演示了自己为sphinx服务编写一个供系统服务调用的脚本。
有时候,我觉得直接使用第一种办法即可。不需要弄这么繁琐。