百战RHCE(第十二战:Linux进阶命令九-systemd daemon 极简管理)
哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章!
首先,本人目前是计算机专业的大一学生,基于对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 极简管理)相关推荐
- 百战RHCE(第七战:Linux进阶命令5-sudo提权极简管理)
哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章! 首先,本人目前是计算机专业的大一学生,基于对Linux操作系统的爱好,参与了RHCE的培训班,而我这次编写的 <百战RHCE>文章,是基 ...
- linux进阶命令2
linux进阶命令2 压缩 1.压缩的概念 1)压缩的目的: 在网络传递文件时,可以先将文件压缩,然后传递压缩后的文件,从而减少网络带宽. 接受者接受文件后,解压即可. 2)压缩的类型 有损压缩.无损 ...
- Linux 进阶命令 - 集大成篇
目录 1. grep 命令 2. wc 命令 3. echo 命令 4. tail 命令 5. su 命令 6. sudo 命令 7. chomd 命令 8. chown ...
- 百战RHCE(第十五战:Linux进阶命令十二-主机名和域名解析极简管理)
哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章! 首先,本人目前是计算机专业的大一学生,基于对Linux操作系统的爱好,参与了RHCE的培训班,而我这次编写的 <百战RHCE>文章,是基 ...
- 百战RHCE(第十四战:Linux进阶命令十一-nmcli 配置网络极简管理)
哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章! 首先,本人目前是计算机专业的大一学生,基于对Linux操作系统的爱好,参与了RHCE的培训班,而我这次编写的 <百战RHCE>文章,是基 ...
- linux桌面应用程序开发工具,极简桌面工具(uTools For Linux)
uTools For Linux是一个极简.插件化.跨平台的现代桌面软件.通过自由选配丰富的插件,打造你得心应手的工具集合.当你熟悉它后,能够为你节约大量时间,让你可以更加专注地改变世界.uTools ...
- centos 计算器_Linux学习之CentOS(十五)--Linux常用命令之bc、man、shutdown...
在写这篇随笔时,翻看了一下上一篇随笔的写作日期,发现已经是4月8号了,时间已经过了11天了!!!过了这么久没有更新Linux学习系列的随笔了,是因为我又松懈了Linux的学习了吗?不是的!!!是因为最 ...
- linux 进阶命令笔记(12月26日)
1. df 指令 作用:查看磁盘空间 用法: #df -h -h 表示以可读性较高的形式展示大小 2.free 指令 作用:查看内存使用情况 语法:#free -m -m表示 ...
- Linux 常用命令九 tar
一.tar命令 tar命令用于打包,解包. gzip命令用于压缩,解压缩. bzip2命令用于压缩,解压缩. 这三个是在linux中常用的,还有一些不常用的. tar打包: wang@wang:~/w ...
最新文章
- 生成N个不相等的随机数
- [POJ1741]Tree
- 学习JNI一些基础知识
- Actor-ES框架:Ray
- markdown 常用语法总结 - 个人版
- 平衡二叉树中需要旋转的情况
- 转:Socket在阻塞模式下的信息收发和文件接收
- C语言如何设计随机数
- js 回调函数 精析
- 2012《Linux杂志》读者选择奖 (Readers' Choice Awards 2012- Linux Journal)
- HDU 1166 - 敌兵布阵
- Nginx 代理设置
- ISO50001认证辅导,ISO50001能源管理体系(EnMS)的框架是通过系统地提高能源效率和消耗
- DirectX Repair V3.0
- unittest框架怎么生成测试报告?
- 【SVPWM】SVPWM算法推导及其Simulink仿真(二)
- 智能优化算法(超全)
- C++命名空间中类声明、成员函数声明和函数模板
- ios 4.2.1完全越狱图文教程
- 小程序---宿主环境(常用组件、api)---02