谢烟客---------Linux之CentOS 7 systemd

简介:

系统启动流程

POST --> bootloader  --> MBR工作 --> kernel(initramfs/initrd) --> ro rootfs --> init


init

用户空间的一切与管理相关的事务由Init程序完成,特权操作发起syscall由内核完成


init分类

wKiom1m4i1iAPPfLAAAmw-P45ec492.png


init新特性

* 系统引导时,并行启动进程,类似于upstart

按需激活进程: 节约内存,启动速度快

* 支持系统快照

* 基于依赖控制服务启动逻辑 


系统管理的核心概念: systemd unit

配置文件标识和配置:socketsnapshot服务程序、以及init相关的信息

配置文件

wKiom1m4jBSSj1siAAAUdh_ohEc725.png


TYPE:

wKiom1m4jMDhVYvaAACMeusBSo4571.png


关键特性

基于socket激活机制:系统启动用不到的服务,由socketunit代为监听,在被访问时临时启动服务。

基于dbus激活机制:支持dbus进程间通信的程序,可以按需激活

基于device激活机制:在某个硬件设备激活或变得可用时的激活机制

基于path激活机制:某个文件路径变得可用或激活时,激活相关服务

基于快照激活机制:保存unit的当前状态信息于持久存储设备中

兼容SysV脚本:兼容有限,支持有限个运行级别


不兼容

* 没有脚本灵活,systemctl命令格式固定

非由systemd服务启动的服务,systemd服务不能控制

systemd级别切换时,只有将运行中的停止,停止中的启动。

1
2
3
4
     SysV脚本init切换运行级别时,例如 3 --> 2
     将/etc/rc.d/rc. 2 /*下的所有服务程序
         K* stop
         S* start

* systemctl不会读取标准输入数据流

跟用户的PATH环境没有关系

unit均受5min超时时长,时间一过,将会退出



CentOS 7 systemd管理系统服务


基本管理

wKioL1m4kBST1_7WAAA1CKh4FbM498.png

wKiom1m4km7hgjfuAAAii5R5KRw296.png


服务状态注解

wKiom1m4kGmhou5EAABDWI2Wbpo821.png

wKioL1m4kECSeih1AABHNNRcvPk112.png


查看服务启动或停止、依赖关系、查看运行级别

1
systemctl list-units --type TYPE [--all]

wKiom1m4kczAUSypAAA4DD7P5_s596.png

wKiom1m4kcyTK2Y2AAAMf3gCYDw713.png


服务状态注解

wKiom1m4kjWyT_RYAAAmthDWOSM812.png


查看开机是否自动启动

wKiom1m4keGTh9jAAAAd5S7TRJw879.png


设定服务开机是否自启

wKiom1m4kt_yTKfWAAAr5DWsMg4880.png


运行级别管理

name.target

wKioL1m4k7qRWRbHAAA30QKGqL8976.png


查看运行级别


级别管理

wKiom1m4lrbBN7ASAABLcyc_TuA206.png

1
2
3
4
5
6
设定图形:
     删除/etc/systemd/system/ default .target
     ln -s /usr/lib/systemd/system/graphical.target /etc/systemd/system/ default .target
设定字符:
     删除/etc/systemd/system/ default .target
     ln -s /usr/lib/systemd/system/multi-user.target /etc/systemd/system/ default .target


其他命令

wKiom1m4lvbxTk8uAAApg9qU-hw959.png

wKioL1m4lxuCY-gIAAAv2iu4eGI104.png


unit配置文件

1
2
3
4
5
6
7
8
9
[Unit]
Description=描述信息
After=定义依赖关系
[Service]
程序
执行的命令
启动
重载
停止










本文转自 lccnx 51CTO博客,原文链接:http://blog.51cto.com/sonlich/1964833,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
Linux 网络安全 Python
linux centos上安装python3.11.x详细完整教程
这篇文章提供了在CentOS系统上安装Python 3.11.x版本的详细步骤,包括下载、解压、安装依赖、编译配置、解决常见错误以及版本验证。
561 1
linux centos上安装python3.11.x详细完整教程
|
5天前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
70 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
14天前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
37 1
Linux系统之Centos7安装cockpit图形管理界面
|
20天前
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
49 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
27天前
|
Linux Docker 容器
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
本篇博客重在讲解Centos安装docker,经博主多次在不同服务器上测试,极其的稳定,尤其是阿里的服务器,一路复制命令畅通无阻。
152 4
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
|
14天前
|
存储 网络协议 Linux
AWS实操-EC2-创建购买linux(centos)EC2服务器
AWS实操-EC2-创建购买linux(centos)EC2服务器
|
2月前
|
NoSQL Linux Redis
linux之centos安装redis
linux之centos安装redis
|
2月前
|
Linux Python
Linux之centos安装clinkhouse以及python如何连接
Linux之centos安装clinkhouse以及python如何连接
|
2月前
|
Linux
linux之centos安装dataease数据报表工具
linux之centos安装dataease数据报表工具
|
2月前
|
消息中间件 Linux
linux之centos安装rabbitmq
linux之centos安装rabbitmq