> CentOS > CentOS运维 >

Centos和Red Hat Linux系统设置服务自启动

Centos和Red Hat Linux系统中设置服务自启动的两种方式如下:

 

1、修改/etc/rc.local文件,添加启动服务的命令。

先写好启动脚本或者启动命令,保证启动脚本或命令能正常启动服务,将脚本路径或启动命令添加至/etc/rc.local文件中。操作示例:

vim /etc/rc.local

在最后一行加入启动服务脚本的绝对路径或启动命令,然后保存退出。

rc.png

 

2、设定启动级别的自启动服务。

 

第一种方式:ln -s 建立启动软连接

在Linux中有7种运行级别(可在/etc/inittab文件设置),每种运行级别分别对应着/etc/rc[0~6].d这7个目录。这7个目录中,每个目录分别存放着对应运行级别加载时需要关闭或启动的服务,由下图rc3.d目录可以看出,其实每个脚本文件都对应着/etc/init.d/目录下具体的服务,K开头的脚本文件代表运行级别加载时需要关闭的,S开头的代表需要执行启动的。rc1.png

因此,当我们需要开机启动自己的脚本服务时,需要将可执行脚本放在/etc/init.d目录下,然后在/etc/rc.d/rc*.d中建立软链接即可。

 

 

第二种方式:chkconfig命令添加管理服务

先将需要启动的服务脚本放置到/etc/init.d/目录下,以mysqld为例。

rc2.png

然后查看是否已经注册为服务,查看命令:chkconfig --list mysqld

rc3.png

通过命令没有查看到,说明还没有添加到启动服务,通过命令chkconfig --add mysqld添加即可。

rc4.png

然后再用命令chkconfig --list mysqld 查看,显示已经添加到了启动服务中。

 

使用chkconfig命令进行启动级别设置:

如果需要自启动某些服务,只需使用命令chkconfig服务名on即可,若想关闭,将on改为off。

在默认情况下,chkconfig会自启动2345这四个级别,如果想自定义启动级别可以加上--level选项,后边跟指定的启动级别。

示例:先将mysqld服务的所有启动级别关闭,然后使用--level选项启动自定义级别。

chkconfig --level 2345 mysqld off   #关闭2345级别启动。

 

rc5.png

chkconfig --level 35 mysqld on  #指定3、5级别启动。

rc6.png

 

(责任编辑:IT)