centos7也支持service命令启动服务吗,对于centos7 中的systemctl和旧的service命令的区别和联系
一、centos7也支持service命令启动服务吗
CentOS 7.0中一个最主要的改变,就是切换到了systemd。它用于替代红帽企业版Linux前任版本中的SysV和Upstart,对系统和服务进行管理。systemd兼容SysV和Linux标准组的启动脚本。Systemd是一个Linux操作系统下的系统和服务管理器。它被设计成向后兼容SysV启动脚本(所谓的向后兼容就是对于之前的版本都是兼容的,但是对于之后的版本就不兼容了!),并提供了大量的特性,如开机时平行启动系统服务,按需启动守护进程,支持系统状态快照,或者基于依赖的服务控制逻辑。
先前的使用SysV初始化或Upstart的红帽企业版Linux版本中,使用位于/etc/rc.d/init.d/目录中的bash初始化脚本进行管理。而在RHEL 7/CentOS 7中,这些启动脚本被服务单元(服务单元的样子:
以.service结尾)取代了。服务单元以.service文件扩展结束,提供了与初始化脚本同样的用途。要查看、启动、停止、重启、启用或者禁用系统服务,你要使用systemctl来代替旧的service命令。
注:为了向后兼容,旧的service命令在CentOS 7中仍然可用,它会重定向所有命令到新的systemctl工具。
下面是systemctl使用例子
使用systemctl来启动/停止/重启服务
要启动一个服务,你需要使用如下命令:
# systemctl start httpd.service
这会启动httpd服务,就我们而言,Apache HTTP服务器。
要停掉它,需要以root身份使用该命令:
# systemctl stop httpd.service
要重启,你可以使用restart选项,如果服务在运行中,它将重启服务;如果服务不在运行中,它将会启动。你也可以使用try-start选项,它只会在服务已经在运行中的时候重启服务。同时,reload选项你也可以有,它会重新加载配置文件。
# systemctl restart httpd.service
# systemctl try-restart httpd.service
# systemctl reload httpd.service
我们例子中的命令看起来会像下面这样:
检查服务状态
要检查服务状态,你可以使用status选项,看这里:
# systemctl status httpd.service
输出结果就像这样: 它会告诉你运行中的服务的方方面面。
使用启用/禁用服务来控制开机启动
你也可以使用enable/disable选项来控制一个服务是否开机启动,命令如下:
# systemctl enable httpd.service
# systemctl disable httpd.service
小结:1、先前的service命令在centos7 中仍然是可以使用的,因为旧的service命令(如:service network start命令)也是可以在centos7系统中执行的,系统会自动的重定向到新的命令
2、centos7的系统都是用service的 使用位于/etc/rc.d/init.d/目录中的bash初始化脚本进行管理。而在RHEL 7/CentOS 7中,这些启动脚本被服务单元(服务单元的样子:
以.service结尾)取代了
参考链接:http://blog.sina.com.cn/s/blog_12b1464290102yc9f.html
二、centos7 中的systemctl和旧的service命令的区别和联系
1、service命令的执行的原理:通过执行脚本的形式去管理、开启、关闭和重启服务
发现linux启动服务是用SERVICE + COMMAND+参数,觉得很有意思,因为command命令本身也是一个脚本啊,比如说:service network restart;好奇心就来了,怎么能够做一个属于自己的service命令呢。
其实很简单,只要我们认识service这个命令的原理就行了。如果要知道service这个命令怎么用,你就自己man service下,在这里,我简要说下service的运行过程。举个例子来说:service network restart。
首先呢,sevice 会去寻找/etc/init.d下的network脚本,restart是network脚本里的一个参数(你可以去查看network这个脚本支持的参数),然后告诉系统运行network这个脚本,剩下的事情就交给network脚本去坐了,事实就是这么简单。
现在,你应该知道怎么编写属于自己的service命令了吧,编写一个脚本,然后把它放在/etc/init.d这个目录底下,你就可以用service +脚本名字 运行它。如果是要开机自动启动那就得用chkconfig命令了。
注意:
A、service这个命令往往是即时生效,不用开关机,但是重启后服务会回到默认状态。
B、chkconfig是用于把服务加到开机自动启动列表里,只要启动它,就能自动启动,重启后永久生效
即:chkconfig --add COMMAND
chkconfig COMMAND on/off 重启后永久生效
2、systemctl命令的原理:
linux中systemctl详细理解:
一、systemctl理解
Linux 服务管理两种方式service和systemctl
systemd是Linux系统最新的初始化系统(init),作用是提高系统的启动速度,尽可能启动较少的进程,尽可能更多进程并发启动。想要更深的理解systemd ,可以见链接:https://www.cnblogs.com/isme-zjh/p/11685327.html
systemd对应的进程管理命令是systemctl
1. systemctl命令兼容了service
即systemctl也会去/etc/init.d目录下,查看,执行相关程序,
因为systemctl实际上是
在RHEL 7/CentOS 7中,这些启动脚本被服务单元(服务单元的样子:
以.service结尾)取代了。服务单元以.service文件扩展结束,提供了与初始化脚本同样的用途(启动服务、关闭服务等,)常见的.service

具体更深的对于 systemctl 命令管理的具体的资源的类型和具体的应用的命令可以见链接:https://www.cnblogs.com/isme-zjh/p/11685233.html
centos7也支持service命令启动服务吗,对于centos7 中的systemctl和旧的service命令的区别和联系的更多相关文章
- CentOS7安装mysql后无法启动服务,提示Unit not found
首发日期: 2018-01-30 现象: 在centOS7中启动MySQL数据库提示: Failed to start mysqld.service: Unit not found [明明已经安装了, ...
- MySql:CentOS7安装mysql后无法启动服务报错,(需要更新yum源)
首先:需要更新你的yum源,保证yum源最新. 1.安装: yum install -y mariadb-server 2.启动maria DB服务: systemctl start mariadb. ...
- Linux的setup命令启动服务名称和功能
Linux的setup命令启动服务名称和功能 1 anacron 可执行crontab既定时间内没执行的工作.2 atd 单一使用的例行性命令.3 apmd 了解系统电池电量(手提式计算机使用).4 ...
- Centos7禁止或者允许开机启动服务
[root@bogon rsyslog.d]# systemctl is-enabled httpd disabled [root@bogon rsyslog.d]# systemctl status ...
- 有关linux中出现systemctl status network.service" and "journalctl -xe" for details.
Job for network.service failed because the control process exited with error code >**[root@mina0 ...
- Linux命令备忘录: jobs 显示Linux中的任务列表及任务状态命令
Linux jobs命令用法详解:显示Linux中的任务列表及任务状态命令 jobs命令用于显示Linux中的任务列表及任务状态,包括后台运行的任务.该命令可以显示任务号及其对应的进程号.其中,任务号 ...
- linux命令启动服务(tomcat服务或者jar包)
启动tomcat: 1.方式一:直接启动 ./startup.sh 2.方式二:nohup ./startup.sh & 启动后,关闭当前客户端连接,重新启动一个查看是 否已经启动 启动jar ...
- 每天一个linux命令(63):Linux中zip压缩和unzip解压缩命令详解
文章转自:http://www.jb51.net/LINUXjishu/105916.html 1.把/home目录下面的mydata目录压缩为mydata.zipzip -r mydata.zip ...
- redis修改密码以及验证登录,启动服务常用命令
1.通过配置文件,直接修改 2.启动然后使用密码验证登录 3.redis常用命令 启动服务:redis-server --service-start重启服务:service redis restart ...
随机推荐
- Turtle模块基本方法和使用(画布)
方法 简写 描述 例子 移动和绘制 forward() fd() 前进 turtle.forward(10):前进10个单位 backward() bk().back() 后退 turtle.ba ...
- selenium--find_element_by_xpath()方法汇总
一.从根目录/开始 有点像Linux的文件查看,/代表根目录,一级一级的查找,直接子节点,相当于css_selector中的>号/html/body/div/p 二.根据元素属性选择: 查找具体 ...
- C#依赖注入 简体demo
class Program { static void Main(string[] args) { Dal dal = new MySql(); dal.Add(); Dal dal1 = new ...
- vue的$nextTick
https://segmentfault.com/a/1190000012861862 简单来说:如果你修改了某个dom中的数据,视图并不会立即更新.Vue 实现响应式并不是数据发生变化之后 DOM ...
- MySQL的选则字段+联表+判断+排序(order by)
MySQL的选则字段+联表+判断+排序(order by) 两个表:1.成绩单 2.查询名单 目标: 1.选中全部字段,用于输出. 2.成绩单中有很多人的成绩,第一步是希望通过联表,只查查询名单上的人 ...
- 小程序图片上传,长按删除,weui
<view class="weui-cells"> <view class="weui-cell"> <view class=&q ...
- MySQL安装版安装过程
步骤1 步骤2 步骤3 步骤4 步骤5 步骤6 步骤7 步骤8 步骤9 步骤10 步骤11 步骤12
- 火狐浏览器将网页保存为pdf
目录 火狐打印功能 火狐插件 save as pdf 深夜更博仙女镇 @ 有时候查一些技术博客之类的,当时收藏了,过一阵子再想查看的时候发现404了,所以稳妥的办法还是将把网页保存为pdf. 火狐打印 ...
- Docker最全教程——从理论到实战(九)
使用Tencent Hub来完成CI 关于Tencent Hub Tencent Hub是腾讯出品的DevOps服务.主要提供多存储格式的版本管理,支持Docker Image.Binary.Helm ...
- C++-CodeForces-1313A
真的打起比赛来,连个贪心都写不好,呜呜呜. #include <bits/stdc++.h> using namespace std; ],t,ans; void IF(int&a ...