systemd概念

核心概念:单元

依赖关系

systemd事务

启动目标和运行级别

单元

早期CentOS版本中的服务管理脚本在CentOS7中被服务但源文件替换。系统初始化需要启动后台服务,需要完成一系列的配置工作(如挂载文件系统),其中每一步或者每一项任务都要被systemd抽象为一个单元,单元由相应的配置文件进行识别和配置,一个单元需要一个对应的单元文件

依赖关系

虽然说systemd能够最大限度的并发执行很多有关于依赖的工作,但是一些任务存先后的依赖关系,无法并行执行。为解决这一依赖问题。systemd的单元之间可以彼此定义依赖关系。可以在单元

文件中使用关键字来描述单元之间的依赖关系。如单元A依赖单元B,可以在单元B的定义中用require A来表示,这样systemd就会保证先启动A再启动B。

systemd事务

systemd能够保证事务完整性,此事务于数据库中有所不同,旨在保证多个依赖的单元之间没有循环引用。例如单元A,B,C之间存在依赖,systemd将无法启动任意一个服务,为此systemd将单元之间的依赖分为两种:即强依赖和弱依赖。systemd能够自动修复配置错误,极大的减轻了管理员的排错负担。

启动目标和运行级别

systemd可以创建不同的装填,装填提供了灵活的机制来设置启动配置项。这些状态是由多个但源文件组成的,systemd将这些状态称之为启动目标。

运行级别就是操作系统当前长在运行的功能级别。Linux的标准运行级别为0~6。Centos7使用systemd代替init程序来开始系统初始化的过程,使用启动目标的概念来代替运行级别。

运行级别之间是相互排斥的,不可能多个级别同时启动,但是多个启动目标可以同时启动,启动目标提供了最大的灵活性,可以继承一个已有的目标,并添加其他服务来创建自己的目标

systemd启动系统时需要启动大量的单元。每一次启动都是指本次启动需要哪些单元。启动某个目标时,systemd就会启动其中所有的单元。从这个角度上来看,启动目标这个概念类似于一种状态,启动某个目标就好比启动到某种状态

CentOS预定义了一些启动目标,与之前的版本有所不同,为了向后兼容,systemd也让一些启动目标映射为SysV的运行级别

systemd单元文件

systemd概念和运行机制的更多相关文章

  1. day1--大数据概念,hadoop介绍,hdfs整体运行机制

    1.什么是大数据 基本概念 在互联网技术发展到现今阶段,大量日常.工作等事务产生的数据都已经信息化,人类产生的数据量相比以前有了爆炸式的增长,以前的传统的数据处理技术已经无法胜任,需求催生技术,一套用 ...

  2. 深入理解JavaScript运行机制

    深入理解JavaScript运行机制 前言 本文是写作在给团队新人培训之际,所以其实本文的受众是对JavaScript的运行机制不了解或了解起来有困难的小伙伴.也就是说,其实真正的原理和本文阐述的并不 ...

  3. Windows程序内部运行机制 转自http://www.cnblogs.com/zhili/p/WinMain.html

    一.引言 要想熟练掌握Windows应用程序的开发,首先需要理解Windows平台下程序运行的内部机制,然而在.NET平台下,创建一个Windows桌面程序,只需要简单地选择Windows窗体应用程序 ...

  4. JavaWeb三大组件——过滤器的运行机制理解

    过滤器Filter 文章前言:本文侧重实用和理解. 一.过滤器的概念. lFilter也称之为过滤器,它是Servlet技术中最实用的技术,WEB开发人员通过Filter技术,对web服务器管理的所有 ...

  5. Spark Streaming架构设计和运行机制总结

    本期内容 : Spark Streaming中的架构设计和运行机制 Spark Streaming深度思考 Spark Streaming的本质就是在RDD基础之上加上Time ,由Time不断的运行 ...

  6. Chrome扩展开发之二——Chrome扩展中脚本的运行机制和通信方式

    目录: 0.Chrome扩展开发(Gmail附件管理助手)系列之〇——概述 1.Chrome扩展开发之一——Chrome扩展的文件结构 2.Chrome扩展开发之二——Chrome扩展中脚本的运行机制 ...

  7. 通过案例对 spark streaming 透彻理解三板斧之二:spark streaming运行机制

    本期内容: 1. Spark Streaming架构 2. Spark Streaming运行机制 Spark大数据分析框架的核心部件: spark Core.spark  Streaming流计算. ...

  8. 深入浅出话VC++(1)——Windows程序内部运行机制

    一.引言 要想熟练掌握Windows应用程序的开发,首先需要理解Windows平台下程序运行的内部机制,然而在.NET平台下,创建一个Windows桌面程序,只需要简单地选择Windows窗体应用程序 ...

  9. ARP协议格式、ARP运行机制入门学习

    相关学习资料 http://baike.baidu.com/view/149421.htm?fromtitle=ARP%E5%8D%8F%E8%AE%AE&fromid=1742212& ...

随机推荐

  1. PHP代码审计基础-中级篇

    初级篇更多是对那些已有的版本漏洞分析,存在安全问题的函数进行讲解,中级篇更多是针对用户输入对漏洞进行利用 中级篇更多是考虑由用户输入导致的安全问题. 预备工具首先要有php本地环境可以调试代码 总结就 ...

  2. iOS编译Unity3d文件报错 Permission denied

    最近在尝试Unity3d的使用,毕竟Unity可以很好的编译出iOS代码,只用我们正常进行打包就好了. 这里遇到了个问题,分享一下. Archive快结束的时候,报了三个错误,类似于 /Users/s ...

  3. 关于举办【福州】《K8S社区线下技术交流会》的问卷调查

      近年来,容器.Kubernetes.DevOps.微服务.Serverless等一系列云原生技术受到越来越多的关注,云原生为企业数字化转型提供了创新源动力,基于云原生技术构建企业技术中台在各行业也 ...

  4. javascript实用代码片段

    持续积累中~ 拓展原型 Function.prototype.method = function(name, extend) { if(!this.prototype[name]) { this.pr ...

  5. 拨云见日,彻底弄清楚Java日志框架 log4j, logback, slf4j的区别与联系

    log4j 以及 logback, slf4j 官网 日志框架的困惑 作为一个正常的项目,是必须有日志框架的存在的,没有日志,很难追踪一些奇奇怪怪的系统问题. 但是,我们经常在项目的依赖中,见到奇奇怪 ...

  6. OptimalSolution(6)--栈和队列

    一.设计一个有getMin功能的栈 题目:实现一个特殊的栈,在实现栈的基本功能的基础上,再实现返回栈中最小元素的操作.pop.push.getMin操作的时间复杂度都是O(1). 思路:设计两个栈,一 ...

  7. Mac OSX 10.7.3 以上系统安装JDK1.7失败 Java from Oracle requires Mac OS X 10.7.3 or later.

    解决办法: 打开JDK dmg安装包,把里面的pkg安装包拖出来然后解包 xar -xf JDK\ 7\ Update\ 40.pkg ./Java 修改Distribution文件找到pm_inst ...

  8. Linux下搭建.NetCore3.0环境及创建项目

    ================================================== ================================================= ...

  9. [2018-07-19] 安装python

    1.Python官网 https://www.python.org/downloads/ 2.应该使用Python2.x还是Python3.x? Python有2.x和3.x两个版本,这两个版本是不兼 ...

  10. 解决MacOs 下的 matplotlib 中文字体乱码

    在使用 matplotlib 时候,如果表中有中文字体,那么可能会出现无法显示的情况,原因是因为缺少中文字体,可以使用以下步骤解决. 查看 matplotlib 的位置 matplotlib.matp ...