前言:
在日常使用linux系统过程中,安装服务后系统不会自动启动服务的。就算手动启动了服务,只是当前生效,一旦服务器重启后,系统不会自动启动这些服务。如果每次重启服务器都要自己手动启动这些服务,一台还阔以接受,如果是一个集群等等,那么难免会有点淡淡的忧伤。所以,我们接下来就来设置一下开机启动服务。
1、 利用systemctl命令添加启动项
以centos7中的docker服务为例
注意:
centos7自启项已不再使用chkconfig查看,而是systemctl
1.1、查看开机自启项列表
systemctl list-unit-files
左—>右依次是:
服务名称、状态。
enabled:开机启动
disabled:开机不启动
还是比较多的,咱们过滤一下
只查看启动项
systemctl list-unit-files | grep enabled
发现一个咱们常用的firewalld.service
1.2、设置docker服务开机启动
systemctl enable docker
从服务列表中查看
systemctl list-unit-files | grep docker
发现如下已经enable
启动服务
systemctl start docker.service
1.3、测试服务是否自启,重启OS
init 6
1.4、查看服务状态
systemctl status docker
1.5、补充
移除开机启动服务
systemctl disable docker
以docker为例
2、 修改配置文件[/etc/rc.d/rc.local],添加开机自启脚本
关于/etc/rc.d/rc.local文件:
Centos中的运行模式2、3、5都把/etc/rc.d/rc.local做为初始化脚本中的最后一个,所以用户可以在这个文件中添加一些需要在其他初始化工作之后,登录之前执行的命令。
2.1以tomcat为例:
注意:这里也可以自己写一个脚本[同理],为了方便直接使用tomcat自带的
获取startup.sh路径
/root/General/apache-tomcat-8.5.31/bin
2.2、修改配置文件[/etc/rc.d/rc.local]
vim /etc/rc.d/rc.local
添加
/root/General/apache-tomcat-8.5.31/bin/startup.sh
2.3、给rc.local x[执行]的权限
注意:在centos7中,/etc/rc.d/rc.local的权限被降低了
chmod a+x rc.local
2.4、使文件生效
将刚刚修改的文件加载到内存
source /etc/rc.d/rc.local
2.5、查看tomcat进程
ps -ef | grep tomcat
2.6、重启
init 6
在浏览器中访问以下
测试成功。
【往期经典回顾】
Linux chattr 命令,超越权限任性修改
Centos系统运行级别常见操作
QPS、TPS、并发用户数、吞吐量关系
Linux 系统启动原理及故障排除
【心语】
人这一生,幸福与否,心态很重要。如果你怨天尤人,常做无意义的比较,只会觉得生活越过越糟。不妨学着跟自己比,只要今天的你比昨天好,现在的生活比以往好,就已经是一种进步。