Systemd对于Linux来说,就是一个init程序,可以作为sysVinitUpstat的替代。

RHEL7监控和控制Systemd的主要命令是systemctl,该命令可查看系统状态管理系统及服务

RHEL7的服务systemctl脚本存放在:/usr/lib/systemd,有系统(system)用户(user)之分。
.
像一些需要开机不登陆就得运行的程序,就存在系统服务里,即:/usr/lib/systemd/system目录下。而关于用户的存放在/usr/lib/systemd/user目录下。
.
其中每一个服务以.service结尾,一般分为3部分:[Unit][Service][Install]
.
如下图(sshd服务):

[Unit]
这部分是对这个服务的说明,主要内容包括Description和After。
Description用于描述服务;After用于描述服务类型。
.
[Service]
这部分是服务的关键,是服务的一些具体运行参数的设置。

  1. Type=forking 表示此服务是后台运行的形式。
  2. PIDFile 指定存放PID的文件路径。
  3. ExecStart 为服务的具体运行命令。
  4. ExecReload 为重载命令。
  5. ExecStop 为停止命令。

.
注意:[Service]部分的启动、重启、停止 命令全部要求使用绝对路径!
.
[Install]
这部分是服务安装的相关设置,可设置为多用户的。
需要注意的是,如果服务没有Install部分,一般意味着应该通过其它服务自动调用它们。
使用systemd时,可通过正确编写单元配置文件来解决其依赖关系。
典型的情况是,服务A要求服务B在A启动之前运行。在此情况下,向服务A配置文件中的[Unit]段添加Requires=B和After=B即可.
***
对于玩转RHEL6的小伙伴来说,servicechkconfig这两个命令肯定不陌生。

RHEL7系统中的systemctl是管制服务的主要工具,它整合了service与chkconfig功能于一体。

systemd提供更优秀的框架以表示系统服务间的依赖关系。
systemd实现系统初始化时服务的并行启动,同时达到降低Shell的系统开销的效果。
systemd的目的是尽可能启动更少的进程,尽可能将更多进程并行启动。

systemctl命令的基本格式:systemctl 动作 服务名.service

可使用 systemctl daemon-reload 重新载入systemd,扫描新的或有变动的单元。

系统状态相关

systemctl reboot 重启系统
.
systemctl poweroff 退出系统并停止电源
.
systemctlsystemctl list-units 输出激活单元
.
systemctl list-units --type=service 列出active状态的服务
.
systemctl list-unit-files 列出所有已安装的服务
.
systemctl --failed 显示启动失败的服务
.
systemd-cgls 以树形列出正在运行的进程

服务控制相关

systemctl start 服务名.service 立即启动服务
.
systemctl stop 服务名.service 立即停止服务
.
systemctl restart 服务名.service 重启服务
.
systemctl reload 服务名.service 重新载入服务
.
systemctl status 服务名.service 输出服务运行状态
.
systemctl is-enabled 服务名.service 检查服务是否为开机自启
.
systemctl enable 服务名.service 启用服务开机自启
.
systemctl disable 服务名.service 禁用服务开机自启
.
systemctl is-active 服务名.service 检查服务是否正在运行
.
systemctl mask 服务名.service 禁用服务
.
systemctl unmask 服务名.service 激活服务

关于单元扩展名

所有可用的单元文件存放在/usr/lib/systemd/system//etc/systemd/system目录(后者优先级更高)。
.
一个单元可以是系统服务(.service)、挂载点(.mount)、sockets(.sockets)。
.
使用systemctl控制单元时,通常需要使用单元文件的全名,包括扩展名(例如sshd.service)。
.
但是呢,有些单元文件可以在systemctl中使用简写方式。如果无扩展名,systemctl默认把扩展名当做.service。例如 sshd 和 sshd.service 是等价的。
.
挂载点会自动转化为相应的.mount单元。例如/home等价于home.mount。
设备会自动转化为相应的.device单元,所以/dev/sda2等价于dev-sda2.device。


做你没做过的事情,叫做成长。

做你不愿意做的事情,叫做改变。

做你不敢做的事情,叫做突破。

兄dei,加油!

不要每天看着励志的句子,过着颓废的生活。

——抖音@张培猪

【RHEL7/CentOS7服务控制之systemctl命令】的更多相关文章

  1. 【RHEL7/CentOS7防火墙之firewall-cmd命令详解】

    目录 Firewalld zone firewall-cmd 开始配置防火墙策略 总结 Redhat Enterprise Linux7已默认使用firewalld防火墙,其管理工具是firewall ...

  2. 1-20 RHEL7的启动原理和服务控制

    大纲: RHEL7启动原理 RHEL7服务启动配置 网络概述 发布内网服务器 ############################################################ ...

  3. Centos7下的systemctl命令与service和chkconfig

    博主使用的操作系统是最新的CentOS 7,所以可能和网上一些老的博文有一定出入,那是因为版本更新的原因. 这里写图片描述1 service service命令用于对系统服务进行管理,比如启动(sta ...

  4. Centos7中systemctl命令详解

    Linux Systemctl是一个系统管理守护进程.工具和库的集合,用于取代System V.service和chkconfig命令,初始进程主要负责控制systemd系统和服务管理器.通过Syst ...

  5. CentOS7 从查看、启动、停止服务说起systemctl

    执行命令“systemctl status 服务名.service”可查看服务的运行状态,其中服务名后的.service 可以省略,这是CenOS7以后采用systemd作为初始化进程后产生的变化. ...

  6. centos7 将服务添加到systemctl

    centos7中提供了systemd服务,可以方便的管理各种服务 但是有些通过编译安装的服务systemd里面没有,我们只需要添加一下服务文件即可 以下用nginx作为例子,展示如何添加服务到syst ...

  7. centos7 systemctl命令

    systemctl命令是系统服务管理器指令,它实际上将 service 和 chkconfig 这两个命令组合到一起. 实例: 启动nfs服务:systemctl start nfs-server.s ...

  8. centos7中systemctl命令使用方法和心得体会

    使用linux的同学对service和chkconfig两个命令都不陌生,其重要性不言而喻,那么怎么会突然冒出个systemctl命令呢?其实,为了简化操作,systemctl命令将service和c ...

  9. 服务管理--systemctl命令

    摘要: systemctl 是系统服务管理器命令,它实际上将 service 和 chkconfig 这两个命令组合到一起. 任务 旧指令 新指令 使某服务自动启动 chkconfig --level ...

随机推荐

  1. Qt之QStackedLayout

    简述 QStackedLayout继承自QLayout. QStackedLayout类提供了多页面切换的布局,一次只能看到一个界面. QStackedLayout可用于创建类似于QTabWidget ...

  2. [MST] Attach Behavior to mobx-state-tree Models Using Actions

    Models are not just a nifty feature for type checking. They enable you to attach behavior to your ac ...

  3. MySql基础总结(1)

    对于MySql已经是第二次看了,这次基本的目的是将MySql系统的归纳一边,之前学MySql是将笔记写在本子上,以后不想总带着本子,所以再花点时间把笔记归纳在博客中. 下午已将安装步骤具体的写了.如今 ...

  4. 用java实现螺旋数组

    接收数组的行数和列数,返回正序和倒序的螺旋数组 package cn.baokx; public class Test { public static void main(String[] args) ...

  5. [NOIP2015模拟10.22] 最大子矩阵 解题报告(单调栈)

    Description 我们将矩阵A中位于第i行第j列的元素记作A[i,j].一个矩阵A是酷的仅当它满足下面的条件:       A[1,1]+A[r,s]<=A[1,s]+A[r,1](r,s ...

  6. sicily 1003. hash

    Description 请用HASH链式法来解决冲突,且规定链表在链表头插入新元素. 规定HASH函数为:h(x) = x % 11,即哈希数组下标为0-10. 给定两种操作: I 操作,插入一个新的 ...

  7. Boostrap零散

    12 row 是核心控件 class="form-control" 弹窗口<input data-toggle="modal" data-target=& ...

  8. 什么是MySQL?(一)

    课程大纲 第一章:初识MySQL 1.1什么是MySQL?  1.2如何安装MySQL?  1.3如何配置MySQL?  1.4如何启动和关闭MySQL?  1.5MySQL的登录和退出  1.6如何 ...

  9. 修改host方法

    打开路径 C:\Windows\System32\drivers\etc 将hosts文件拷贝出来修改之后放回去覆盖即可 以下是一个例子,想得到ip可以先ping一下那个域名. 左边是ip,右边是域名 ...

  10. iOS开发——根据数组中的字典中的某一元素排序

    数组中的元素是字典,字典中的某一个元素,比如说姓名,现在需要按照姓名的首字母来排序,怎么搞? 做法很简单,在字典中加一个元素,保存姓名的首字母,然后用下面的方法排序. - (void)sortWifi ...