哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章!

首先,本人目前是计算机专业的大一学生,基于对Linux操作系统的爱好,参与了RHCE的培训班,而我这次编写的 《百战RHCE》文章,是基于我自己的学习经验浓缩而来的,保证简洁,方便理解!

而作为一名大学生,我想通过坚持的高水平文章编写带给我自己本身经验的不断进步,同时也希望让更多的Linux新手能接触到更加系统的文章学习。本次《百战RHCE》,会由浅入深,从最基本的命令行,到编写非常复杂的Ansible 自动化脚本

因为本人和你一样也是学习者,所以文章中出现的错误,还望多多指出。

还有注意了哦,我所用的系统为Centos7,如果你还没下载的话,可以在到我的第一章节,那里有下载教材和镜像地址哦~

最后最后我在说最后一句话,引用下我们老师的话:“不要尝试背下所有指令,多记笔记!多敲命令!”

哈喽哈喽朋友你好啊,首先庆祝你一路坚持到了十二战,刚开始的学习可能会遇到很多的问题,但请你相信,只要我们不断的坚持, 一定能获得成功的!那下面我们废话不多说,直接开始今天的学习了!


一.初识systemd daemon

在Linux 的系统当中有着非常多的运行进程。如果你想感受下你Linux上运行进程的数量。那么现在,朋友请你在终端上输入 systemctl  list-units  --type=service  --all.。在你按下回车的一瞬间,你的屏幕将会立马被撑满。

现在我们来看下,充满我们屏幕的这些信息到底是些什么?


UNIT: service unit 名称

LOAD: unit的配置加载到内存

ACTIVE: unit 的高级激活状态

SUB: unit的低级别激活状态

DESCRIPTION: unit 的简短描述

大家看到这是不是有点晕,没事我们先接着学习下去,等一会这一章学完了,朋友你在回来重新看看,就会慢慢理解了


二.units基本架构

units基本概念架构:

daemon: 在后台运行或等待的进程

service: 指一个或多个 daemon

(这段可以这样来理解下,一个服务(service)中运行这多个进程(daemon)

Units: 管理多个想service 这样不同类型的对象,如sock(监控进程通信)

这就是大概的流程图,看到这个流程图,相信朋友你是不是一下子就顿悟了许多呢?

要是顿悟了,咋就继续往下面走了,如果没有呢,那也继续往下面走,等一会学完了在回来继续看。


三.systemctl 显示服务

现在systemd daemon概念部分我们学习到这就结束完了,那我们现在就开始学习一点systemd daemon的管理命令了。首先刚开始,我们先引入 systmed daemon 的systemctl 命令。这个命令后面可以跟非常多的选择格式,完成各种各样的任务。我们这边先引入几个看看


1.systemctl  list-units  --type=unit类型

这个命令主要列出激活状态为 actvie 的相应服务

我这边示范一下。

 


2.systemctl  list-units  --type=unit类型    --all

这个命令会显示所有激活状态的相应服务

systemctl  list-units  --type=service   --all,这个命令我想在开始的时候你自己因该也尝试了,效果因该也看到了

讲到这里我们就要引会我们上面没有讲的知识点

前面我们说过

ACTIVE: unit 的高级别激活状态

SUB: unit的低级别激活状态

注意看 ACTIVE 下面的这么多行,只有 active 和 inactive

actvice对应的低级别激活状态running,exited,waiting (我这里面没有,但你要知道它有 )

inactive对应的低级别激活状态只有dead


下面我给大家解释下他们的意思。

active:运行状态

running: 有一个或多个持续进程运行

exited: 已完成一次性配置

waiting: 运行中,但正在等候事件

inactive: 不在运行状态

dead: 死亡状态


四.systamctl 管理服务

units基本架构我们已经学完了,现在让我们把焦点从群里转移到个体。那么在这我们要提出如果管理好单个服务,管理单个服务我们又要用到哪些命令和选项。

首先先说命令,当当当~还是我们的老朋友 systemctl 命令,这里使用的格式是:

systemctl  选项  服务

而这次 systemctl 给我们带了非常多的选项功能。

让我们一一来看。


1.status:查看服务选项

可以看到我们使用 systemctl  status  sshd 获得到了非常多的信息。


我们先从黄色方框的内容开始分析

Loaded: 服务单元是否加载到内存中后面的内容就是所加载到的目录,注意下绿色部分enabled 那个是开机自启动状态,在看棕色部分,那个是出厂状态,你可以发现这里也是 enabled,说明服务从发行的时候就是开机自启动状态

Active:服务单元的状态从开机到现在运行的时间

状态主要两种active(running),inactive(dead)

Docs: 服务的关键文档有哪些

Main PID: 服务的主进程PID

Tasks: 任务数

CGroup: 资源的限制


蓝色方框的内容是关于这个服务的日志信息,如果处理相关服务是出现了问题可以在其中查看详细内容

上面的内容了解下,暂时不懂没事,以后会慢慢加深理解的。


2.开启服务自启动和检查服务是否自启动

enable:开机自启动

disable:开机不自启动

is-active: 服务是否启动,启动回复 active

is-enabled:检查服务是否开机自启动, 开机自启动 回复 enabled

is-failed: 服务是否启动失败,没有失败回复 active


3.服务重新启动和重新加载

restart: 重启

reload:重新加载(能用 reload 就不要用 restart ,因为在日常工作中,不太可以使用重启的,这样造成的影响非常大)

下面我们来看下利用重启和重新加载的明显区别

当我们使用 reload 重新加载的时候,可以发现上下的 PID 地址是不会改变的 

当我们使用 restart 重新加载的时候,可以发现上下的 PID 地址是会改变的


4.显示unit依赖关系

list-dependencies:显示服务依赖的关系

list-dependencies --reverse: 显示依赖于服务的关系

(就两句可别弄混了哦~)

这个图表现了 sshd 所依赖的关系图

这个图表现了依赖于sshd的关系图

注意看红括号的部分,绿色就是正在运行的部分红色代表开机过程中开启过,但后来又停止了


5.设置屏蔽服务 mask

使用 systemctl  mask  sshd掩藏sshd服务

注意看第一个红括号,可以注意到 loaded上sshd服务加载到了/dev/null这是一个空洞文件

在看第二个红括号,我们发现因为 mask 隐藏的原因,我们无法重新加载 sshd服务了

在看这张使用过 systemctl umask sshd 解除sshd隐藏命令,会发现 loaded 加载sshd服务正常了, systemctl reload sshd 也重新加载正常了。


好了好了朋友们我们今天的内容到这就结束了,今天的内容稍微有点多了但不是特别难,朋友你要多多看看,消化一下啊哦,如果有啥不会的,及时在论坛评论哈~

如果朋友你感觉文章的内容对你有帮助,可以点赞,关注文章和专栏以及关注我哈~嘿嘿嘿~我会定期更新文章的,谢谢朋友你的支持哈~

百战RHCE(第十二战:Linux进阶命令九-systemd daemon 极简管理)相关推荐

  1. 百战RHCE(第七战:Linux进阶命令5-sudo提权极简管理)

    哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章! 首先,本人目前是计算机专业的大一学生,基于对Linux操作系统的爱好,参与了RHCE的培训班,而我这次编写的 <百战RHCE>文章,是基 ...

  2. linux进阶命令2

    linux进阶命令2 压缩 1.压缩的概念 1)压缩的目的: 在网络传递文件时,可以先将文件压缩,然后传递压缩后的文件,从而减少网络带宽. 接受者接受文件后,解压即可. 2)压缩的类型 有损压缩.无损 ...

  3. Linux 进阶命令 - 集大成篇

    目录 1.  grep  命令 2.  wc  命令 3.  echo  命令 4.  tail  命令 5.  su  命令 6.  sudo  命令 7.  chomd  命令 8.  chown ...

  4. 百战RHCE(第十五战:Linux进阶命令十二-主机名和域名解析极简管理)

    哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章! 首先,本人目前是计算机专业的大一学生,基于对Linux操作系统的爱好,参与了RHCE的培训班,而我这次编写的 <百战RHCE>文章,是基 ...

  5. 百战RHCE(第十四战:Linux进阶命令十一-nmcli 配置网络极简管理)

    哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章! 首先,本人目前是计算机专业的大一学生,基于对Linux操作系统的爱好,参与了RHCE的培训班,而我这次编写的 <百战RHCE>文章,是基 ...

  6. linux桌面应用程序开发工具,极简桌面工具(uTools For Linux)

    uTools For Linux是一个极简.插件化.跨平台的现代桌面软件.通过自由选配丰富的插件,打造你得心应手的工具集合.当你熟悉它后,能够为你节约大量时间,让你可以更加专注地改变世界.uTools ...

  7. centos 计算器_Linux学习之CentOS(十五)--Linux常用命令之bc、man、shutdown...

    在写这篇随笔时,翻看了一下上一篇随笔的写作日期,发现已经是4月8号了,时间已经过了11天了!!!过了这么久没有更新Linux学习系列的随笔了,是因为我又松懈了Linux的学习了吗?不是的!!!是因为最 ...

  8. linux 进阶命令笔记(12月26日)

    1. df 指令 作用:查看磁盘空间 用法: #df -h       -h 表示以可读性较高的形式展示大小 2.free 指令 作用:查看内存使用情况 语法:#free -m       -m表示  ...

  9. Linux 常用命令九 tar

    一.tar命令 tar命令用于打包,解包. gzip命令用于压缩,解压缩. bzip2命令用于压缩,解压缩. 这三个是在linux中常用的,还有一些不常用的. tar打包: wang@wang:~/w ...

最新文章

  1. 生成N个不相等的随机数
  2. [POJ1741]Tree
  3. 学习JNI一些基础知识
  4. Actor-ES框架:Ray
  5. markdown 常用语法总结 - 个人版
  6. 平衡二叉树中需要旋转的情况
  7. 转:Socket在阻塞模式下的信息收发和文件接收
  8. C语言如何设计随机数
  9. js 回调函数 精析
  10. 2012《Linux杂志》读者选择奖 (Readers' Choice Awards 2012- Linux Journal)
  11. HDU 1166 - 敌兵布阵
  12. Nginx 代理设置
  13. ISO50001认证辅导,ISO50001能源管理体系(EnMS)的框架是通过系统地提高能源效率和消耗
  14. DirectX Repair V3.0
  15. unittest框架怎么生成测试报告?
  16. 【SVPWM】SVPWM算法推导及其Simulink仿真(二)
  17. 智能优化算法(超全)
  18. C++命名空间中类声明、成员函数声明和函数模板
  19. ios 4.2.1完全越狱图文教程
  20. 小程序---宿主环境(常用组件、api)---02

热门文章

  1. 六、系统软中断、tasklet、工作队列work queue的区别及使用
  2. lv创建与挂载+oracle冷备恢复
  3. python3 elf文件解析
  4. 基于SpringBoot+Vue的鲜花商场管理系统
  5. 辅警考试计算机应用知识,2019年辅警考试题库:计算机知识习题(五)
  6. Win32病毒入门(二)
  7. 电机星三角启动SCL源程序
  8. selenium、webdriver打开Chrome浏览器闪退问题(版本号一致)
  9. 水电气远程无线抄表 DTU无线数传终端应用
  10. 23年版,解决安装rattle的种种问题和bug