阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Centos7 中 Systemd 的Unit文件配置说明

276次阅读
没有评论

共计 2341 个字符,预计需要花费 6 分钟才能阅读完成。

导读 Systemd 使用单元 (Units) 来管理系统服务和程序。系统单元使用配置文件来控制其相关操作。单元配置文件有三种类型:默认单元配置文件,系统特定的单元配置文件和运行时的单元配置文件。

下面列出了三种类型的单元配置文件所在路径:

  • 默认单元配置文件 – /usr/lib/systemd/system
  • 运行时的配置文件 – /run/systemd/system
  • 系统特定的配置文件 – /etc/systemd/system

默认单元配置文件 ,当安装新软件包时,在安装过程中,单元配置文件会在/usr/lib/systemd/system 目录中生成。

运行时单元配置文件,分别在 units 启动和停止时,会自动生成和删除。

系统特定的配置文件 包含定制的单元配置。通过这些配置文件,用户可以覆盖 units 的默认行为。

当我们对系统服务和程序的状态进行任何更改时,例如:start, stop, enable, 和 disable 时,systemd 读取并执行其单元配置文件。按照以下顺序检查单元配置文件。

系统特定的单元配置文件、运行时单元配置文件、默认单元配置文件。

例如,如果一个 units 配置文件在着三个路径下面都存在,则仅使用 系统特定的配置文件 – /etc/systemd/system

Unit 配置文件书写格式

一个单元配置文件包含控制该单元的所有必需信息,例如;启动 Units 文件的路径,在 Units 之前和之后需要启动的 service/units 的名称,文档、手册的位置,依赖项信息,冲突信息等。

Unit 配置文件中的信息通常分为三部分。[Unit],[Type], [Install]

下面寻找一个 Unit 配置文件来解释:

[root@localhost ~]# cat /usr/lib/systemd/system/sshd.service 
[Unit]
Description=OpenSSH server daemon
Documentation=man:sshd(8) man:sshd_config(5)
After=network.target sshd-keygen.target
Wants=sshd-keygen.target

[Service]
Type=notify
EnvironmentFile=-/etc/crypto-policies/back-ends/opensshserver.config
EnvironmentFile=-/etc/sysconfig/sshd
ExecStart=/usr/sbin/sshd -D $OPTIONS $CRYPTO_POLICY
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s

[Install]
WantedBy=multi-user.target

Centos7 中 Systemd 的 Unit 文件配置说明

Unit 部分

该部分通常包含 描述、文档、与其他程序依赖的设置、包括在什么服务 之前 或者 之后 启动该 Units 的设置等。

Description: 该语句提供简要的描述。可以在 systemctl list-units 或者 systemctl status [Units]时看到描述。

Documentation: 该语句提供手册(帮助文档)页面的位置以及访问手册页面的命令。

After: 该语句列出了在该单元之后应激活的单元。仅仅是规范服务启动的顺序,并没有强制要求启动。

Before: 该语句列出了在该单元之前应激活的单元。仅仅是规范服务启动的顺序,并没有强制要求启动。

Wants: 定义该单元启动之后还需要启动哪些 unit。

Requires: 明确了定义该单元需要在哪个单元启动之前才能启动,如果前面的 unit 没有启动,那么该 unit 也不会被启动。

Conflicts: 该语句列出了在启动该单元之前必须停止的单元 / 服务。

一个单元的 After/Before 语句定义了该单元应该启动的顺序。一个单元的 want/Requires 语句定义了该单元的依赖关系。

Type 部分

该部分表示 Unit 的类型。类型有 [Service],[Socket],[Timer],[Mount],[Path] 等类型,本文中使用的是 sshd.service 当例子,所以这边就使用 [Service] 类型来介绍。

下面列举常用语句:
Type : 表示启动的类型,有以下几种类型:simple 为默认值、forking、oneshot 等类型。
EnvironmentFile: 可以有多个该语句、后面跟配置文件。
ExecStart: 后面接启动的语句
ExecStop: 后面接停止服务的语句
ExecReload: 后面接重启服务的语句
KillMode: 该语句如果是 process,当终止进程时,它会终止主程序。如果时 none 时,则不会关闭程序。

Install 部分

该部分时将此 Unit 安装到哪一个 target 中去。常用会安装在multi-user.target

WantedBy: 自动启动该 Unit 的 Target 名称。例如,如果在此语句中看到 multi-user.target,则意味着当系统进入“multi-user.target”运行级别时,此 Unit 将自动启动。

可以看到,当执行 systemctl enable sshd.service 时,会将 sshd.service 从 /usr/lib/systemd/system 目录中创建超链接到 /etc/systemd/system/multi-user.target.wants 下面。
Centos7 中 Systemd 的 Unit 文件配置说明

总结

Systemd 使用单元 (Units) 来管理系统服务和程序。系统单元使用配置文件来控制其相关操作。单元配置文件有三种类型:默认单元配置文件,系统特定的单元配置文件和运行时的单元配置文件。

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计2341字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7799662
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛 NAS-11:咪咕视频订阅部署全攻略 前言 在家庭影音系统里,NAS 不仅是存储中心,更是内容...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集 在云原生体系中,Prometheus 已成为最主流的监控与报警...
星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛 NAS-1:安装飞牛 NAS 前言 在家庭和小型工作室场景中,NAS(Network Atta...
还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛 NAS-12:开源笔记的进化之路,效率玩家的新选择 前言 如何高效管理知识与笔记,已经成为技术...
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...
星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛 NAS-11:咪咕视频订阅部署全攻略 前言 在家庭影音系统里,NAS 不仅是存储中心,更是内容...
星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...
恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击 PHP-FPM(FastCGl Process M...