centos7下systemd服务管理全解

前言

在centos5、centos6中,linux的启动一直采用init进程来进行管理。从centos7开始,放弃了采用init进程,从而使用systemd来代替init进程。

对于init进程来说有两个缺点:
一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。
二是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。

systemd定义

为了解决init的问题,systemd被诞生出来,为系统的启动和管理提供一整套解决方案。systemd在诞生之时也受到了众多人的异议。

由于它过于庞大、复杂,导致背离了unix一切从简的原则。但不可否认它的功能强大,使用方便。

systemd是Linux系统的一套基本构建块。它提供了一个系统和服务管理器,它以PID 1的形式运行并启动系统的其余部分。

systemd新特性

1. 系统引导时实现服务并行启动

systemd 提供了比 upstart 更激进的并行启动能力,采用了 socket / D-Bus activation 等技术启动服务。
一个显而易见的结果就是:更快的启动速度。为了减少系统启动时间,systemd 的目标是:
尽可能启动更少的进程。
尽可能将更多进程并行启动。

2. 按需激活进程

sysvinit系统在初始之前,会将有所有可能启动的后台服务进程全部启动。并且系统在等待这些进程全部运行完之后才会让用户进行登录。这样就导致了时间以及资源的浪费。

systemd则采用按需启动的方式,只有当你真正请求启动某些服务时才会启动。而且服务在运行结束之后,systemd可以关闭它,等下次请求时再次启动。

3. 系统状态快照

systemd可以临时保存当前所有的单元配置文件,或者从前一个快照中恢复单元配置文件。为了保存当前系统服务状态,systemd可以动态的生成单元文件快照。

4. 基础依赖关系定义服务控制逻辑

系统启动过程是由很多的独立工作共同组成的,这些工作之间可能存在依赖关系,比如挂载一个 NFS 文件系统必须依赖网络能够正常工作。

Systemd 虽然能够最大限度地并发执行很多有依赖关系的工作,但是类似"挂载 NFS"和"启动网络"这样的工作还是存在天生的先后依赖关系,无法并发执行。

对于这些任务,systemd 维护一个"事务一致性"的概念,保证所有相关的服务都可以正常启动而不会出现互相依赖,以至于死锁的情况。

unit(单元)

1. unit配置文件

systemd管理着许多的资源,可以认为每一个资源就是unit(单元)unit由其相关的配置文件进行标识、识别和配置;

文件中主要包含了系统服务、监听的socket、保存的快照以及其他与init相关的信息。这些配置文件主要保存在:

①/etc/systemd/system 存放系统启动的默认级别及启动的unit的软连接,优先级最高。
②/run/systemd/system 系统执行过程中产生的服务脚本,优先级次之。
③/usr/lib/systemd/system 存放系统上所有的启动文件。优先级最低 Systemd 默认从目录/etc/systemd/system/读取配置文件。

但是,里面存放的大部分文件都是符号链接,指向目录/usr/lib/systemd/system/,真正的配置文件存放在那个目录。

2. unit常见类型

类型 解释
service unit 文件扩展名为.service,用于定义系统服务
target unit 文件扩展名为.target,用于模拟实现"运行级别"
device unit 文件扩展名为.device,用于定义内核识别的设备
mount unit 文件扩展名为.mount,定义文件系统挂载点
sokect unit 文件扩展名为.socket,用于标识进程间通信用到的socket文件
snapshot unit 文件扩展名为.snapshot,用于实现管理系统快照
swap unit 文件扩展名为.swap,用于标识swap设备
automount unit 文件扩展名为.automount,文件系统自动挂载点设备
path unit 文件扩展名为.path,用于定义文件系统中的一个文件或目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值