要将一个服务变成自动启动的服务,可以利用chkconfig命令来完成。 下面以添加apache系统服务为例说明:
创建/etc/rc.d/init.d/apache文件,添加如下的内容:
#!/bin/sh
# description: Apache auto start-stop script.
#chkconfig: 2345 20 80
APACHE_HOME=/home/psd/local/apache/
APACHE_OWNER=psd
if [ ! -f $APACHE_HOME/bin/apachectl ]
then
echo " there is no apache ctrl please check it !"
exit
fi
case $1 in
'start')
su - $APACHE_OWNER -c "$APACHE_HOME/bin/apachectl start"
;;
'stop')
su - $APACHE_OWNER -c "$APACHE_HOME/bin/apachectl stop"
;;
'restart')
su - $APACHE_OWNER -c "$APACHE_HOME/bin/apachectl restart"
;;
esac
然后
chmod 755 apache
chkconfig --add apache
便可将apache服务增加到自启动列表中,可以通过chkconfig --list查看到服务列表中如果有apache服务,则你的配置成功。
有一个需要注意的地方:
“apache”脚步中一定需要有至少两行以上的注释,其中一行是
chkconfig: 2345 20 80
其中,2345表示系统运行级别是2,3,4或者5时都启动此服务,20是启动的优先级,80是关闭的优先级,值越小越优先。如果启动优先级配置的数太小(如0)时,则有可能启动不成功,因为此时可能其依赖的网络服务还没有启动,从而导致自启动失败。
成功添加了apache系统服务后,可以使用
service apache start 或
/etc/init.d/apache start 启动apache