参考文章:  《Linux 设置程序开机自启动 (命令systemctl 和 chkconfig用法区别比较)

http://blog.csdn.net/kenhins/article/details/74518978

最近看书发现  centos 中开机自启动的设置在不同版本中有所不同,发现如下:

其中,最大的一个不同是在 centos7中 chkconfig  命令会有如下提示:

注:该输出结果只显示 SysV 服务,并不包含
原生 systemd 服务。SysV 配置数据
可能被原生 systemd 配置覆盖。 要列出 systemd 服务,请执行 'systemctl list-unit-files'。
查看在具体 target 启用的服务请执行
'systemctl list-dependencies [target]'。

这也就是说  在 centos7 中  chkconfig  命令与以前版本中 不同。

下面给出网上的一些资料:

centos 7 怎样设置开机自动启动,  如 httpd和mysqld 服务

systemctl enable httpd.service

systemctl enable mysqld.service

如果要取消开机自动启动apache和mysql,则用下面的命令

systemctl disable httpd.service
      
systemctl disable mysqld.service

在以前版本中的    centos   系统中 开机自动运行httpd服务好像不是上面的命令,而是
      
chkconfig –level 3 httpd on

任务 旧指令 新指令
使某服务自动启动 chkconfig –level 3 httpd on systemctl enable httpd.service
使某服务不自动启动 chkconfig –level 3 httpd off systemctl disable httpd.service
检查服务状态 service httpd status systemctl status httpd.service
显示所有已启动的服务 chkconfig –list systemctl list-units –type=service
启动某服务 service httpd start systemctl start httpd.service
停止某服务 service httpd stop systemctl stop httpd.service
重启某服务 service httpd restart systemctl restart httpd.service

systemctl 是系统服务管理器命令,它实际上将 service 和 chkconfig 这两个命令组合到一起。

在centos系统启动过程中,会根据  运行级别   执行   /etc/rcx.d/* (其中x为运行级别)。这里的文件实际上软链接到   /etc/init.d/   下的脚本文件。

systemctl 和  chkconfig  命令都是自动设置自启动项目的命令:

 systemctl 命令:
设置开机启动指令:systemctl enable tomcat
取消设置:systemctl disable tomcat
查看设置:systemctl list-unit-files
 chkconfig 命令:
使用chkconfig时需要注意,/etc/init.d/下有对应的脚本(这里就是tomcat),且该脚本头部包含如下注释以支持chkconfig,
注释表示在rc2|||.d下生成优先级96的启动脚本软链接,另外在rc0|.d下生成优先级04的停止脚本软链接:
#chkconfig: 设置开机启动指令: chkconfig --add tomcat
取消设置: chkconfig --del tomcat
查看设置: chkconfig

正常我们开机是使用 level5 的, 于是进入  rc5.d 目录中查看:

个人的感觉是在  Centos7 中  chkconfig 命令属于被替换的那种命令,  毕竟 chkconfig命令使用起来还是要比  systemctl 要复杂一些的。

而且  systemctl 提示会覆盖  chkconfig  命令的设置, 具体是什么意思不是很理解,有可能是说在systemctl 中设置过了 在 chkconfig 中进行命令是没有效果的,  比如我在systemctl 中设置  tomcat 不自启动,  但是在  chkconfig 中设置自启动,但是实际上 chkconfig 的设置是无效的,也就是说 systemctl 命令是真正执行的。

网上有网友发现以下事情:

先用systemctl设置开机启动,但是因为它是从/usr/lib/systemd/system/下的软链接到/etc/systemd/system/multi-user.target.wants,
而奇怪的是/usr/lib/systemd/system/tomcat这个文件中的环境配置是错误的。 为了防止其他不必要的麻烦,决定使用chkconfig,用chkconfig设置开机启动后重启机子,
发现tomcat未启动。orz。后来尝试把文件名tomcat改成test,执行chkconfig --add test后重启机子,发现tomcat启动了。

Centos7 环境下开机 自启动服务(service) 设置的改变 (命令systemctl 和 chkconfig用法区别比较)的更多相关文章

  1. Linux 设置程序开机自启动 (命令systemctl 和 chkconfig用法区别比较)

    之前在Linux centos 7 上安装了apache 和mysql,当时并没有设置开机自动启动. 最近又重新练习网页,每次开机总是要手动启动httpd和mysqld,不方便,就想设置成开机自动启动 ...

  2. linux开机自启动服务优化设置命令

    1.设置成英文字符,避免出现乱码[root@xuegod62 ~]# LANG=en2.两种配置linux开机自启动服务命令:1)[root@xuegod62 ~]# ntsysv2)[root@xu ...

  3. iServer-Linux环境下开机自启动实现

    备注:该方案的前提是linux环境下已经安装部署好了iServer 1.在/etc/init.d/目录下创建iserver服务脚本文件. [root@localhost /]# vim /etc/in ...

  4. Linux 环境下开机自启动Oracle服务

    使用如下命令查看Oracle相关服务是否已启动: ps aux | grep ora_ #若无ora_**_**相关的进程,则oracle数据库实例未启动 netstat -tlnup | grep ...

  5. 【centos7】设置开机自启动服务--systemd

    centos7使用systemd管理开机自启动服务,不提倡rc.local. 假设现在有2个服务,分别为: my111: my222: 希望在开机时自动启动my222服务,但是my222启动需要my1 ...

  6. Centos 下添加开机自启动服务和脚本【转】

    最近刚玩Centos7的系统,跟Centos6还是很多方面有改变的,这里记录一下怎么在Centos7下添加开机自启动脚本和服务的方法. 1.添加开机自启服务 我这里以docker 服务为例,设置如下两 ...

  7. Linux centos7环境下安装MySQL的步骤详解

    Linux centos7环境下安装MySQL的步骤详解 安装MySQL mysql 有两个跟windows不同的地方 1).my.ini 保存到/etc/my.ini 2).用户权限,单独用户执行 ...

  8. 在ConoHa上Centos7环境下源码安装部署LNMP

    本文记录了从源码,在Centos 7上手动部署LNMP环境的过程,为了方便以后对nginx和mariadb进行升级,这里采用yum的方式进行安装. 1.建立运行网站和数据库的用户和组 groupadd ...

  9. Elasticsearch 在CentOs7 环境中开机启动

    由于园区的电源不是很稳定,经常会断电,断电之后几十台服务器,启动服务都要人肉启动,真是非常蠢的行为: 开机自启动服务就很有必要,之前设置过,后来没有成功就不管了,断电好几次之后,意识到这个问题就很严重 ...

随机推荐

  1. Swagger2 生成 Spring Boot API 文档

    Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.本文主要介绍了在 Spring Boot 添加 Swagger 支持, 生成可自动维护的 A ...

  2. 机器学习实战python3 Logistic Regression

    代码及数据:https://github.com/zle1992/MachineLearningInAction logistic regression 优点:计算代价不高,易于理解实现,线性模型的一 ...

  3. CCPC 2016-2017, Finals Solution

    A - The Third Cup is Free 水. #include<bits/stdc++.h> using namespace std; ; int n; int arr[max ...

  4. python一段代码 感受一下

    class T():    def aa(self):        write = 1        print '123' class B():            def hehe(self) ...

  5. deepin中crossover或playonlinux装完office后word无法输入中文的问题

    原因:office安装是自带了一个微软输入法 解决:装offce时进行自定义安装,在office共享功能里,把输入法去掉. 参考: https://jingyan.baidu.com/article/ ...

  6. linux内核分析第八周-理解进程调度时机跟踪分析进程调度与进程切换的过程

    实验原理: 一.调度时机 不同类型的进程有不同的调度需求 第一种分类:        I/O-bound             频繁的进行I/O            通常会花费很多时间等待I/O操 ...

  7. HeyWeGo第三周项目总结

    HeyWeGo第三周项目总结 项目进展 第三周的计划是:将收集到的资料和代码,进行汇总并且分工后开始开始撰写游戏代码与测试代码. 本周我们已经开始编写了自己负责部分的代码. 按照我们的计划,本周我们完 ...

  8. Windows Shell编程之如何编写为文件对象弹出信息框的Shell扩展

    有关COM编程资料 转载:http://www.cnblogs.com/lzjsky/archive/2010/11/22/1884702.html 活动桌面引入一项新特性, 当你在某些特定对象上旋停 ...

  9. Object.getOwnPropertyNames和Object.keys

    返回对象自己(非原型继承的属性)的属性名称,包括函数. 方法: Object.getOwnPropertyNames(object); Object.keys(object); 参数: object, ...

  10. Nginx反向代理缓冲区优化

    内容目录 proxy_buffering proxy_buffer_size proxy_buffers proxy_busy_buffers_size proxy_max_temp_file_siz ...