一般我们在Linux系统上安装完一个服务以后,需要手工去启动,服务才能起来。但是,一旦服务器一旦关闭或者重启,我们部署的服务默认是不会自动起来的,本文主要讲解如何让机器启动的使用能自动启动我们部署的应用程序。
设置服务开机自动启动的方法步骤
- 指定服务的启动脚本文件
启动服务的脚本,我们一般会在文件的前面加上如下这些注释:
第一行注释说明在哪个执行级别下执行以及启动和停止的优先级
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.
- 将脚本文件放入/etc/init.d/目录下
将服务脚本放置在/etc/init.d/目录下,只有将服务脚本放置到这个目录下,才能够被chkconfig这个命令管理起来 - 执行chkconfig设定服务要在哪个执行等级下开机启动
执行命令:
chkconfig --add servicename
chkconfig --level 35 mysqld on
注:chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfig会改变指定服务的启动信息。
Linux系统的运行级
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
chkconfig的使用范例
chkconfig --list #列出所有的系统服务的启动信息
chkconfig --add httpd #增加httpd服务
chkconfig --del httpd #删除httpd服务
chkconfig --level httpd 2345 on #设置httpd在2,3,4,5运行级下开启
chkconfig --list mysqld #列出mysqld服务设置情况
chkconfig --level 35 mysqld on #设定mysqld在等级3和5为开机运行服务
chkconfig mysqld on #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级