『运维备忘录』之 Systemd 命令详解

运维人员不仅要熟悉操作系统、服务器、网络等只是,甚至对于开发相关的也要有所了解。很多运维工作者可能一时半会记不住那么多命令、代码、方法、原理或者用法等等。这里我将结合自身工作,持续给大家更新运维工作所需要接触到的知识点,希望大家喜欢。

今天我们要讲的是 Systemd 


 

一、简介

systemd 是一个 Linux 系统基础组件的集合,提供了一个系统和服务管理器,运行为 PID 1 并负责启动其它程序。功能包括:支持并行化任务;同时采用 socket 式与 D-Bus 总线式启用服务;按需启动守护进程(daemon);利用 Linux 的 cgroups 监视进程;支持快照和系统恢复;维护挂载点和自动挂载点;各服务间基于依赖关系进行精密控制。

systemd 支持 SysV 和 LSB 初始脚本,可以替代 sysvinit。除此之外,功能还包括日志进程、控制基础系统配置,维护登陆用户列表以及系统账户、运行时目录和设置,可以运行容器和虚拟机,可以简单的管理网络配置、网络时间同步、日志转发和名称解析等。

二、基本用法

systemctl list-dependencies  # 显示单元的依赖关系
systemctl list-sockets       # 列出套接字和激活的内容
systemctl list-jobs          # 查看活动的 systemd 作业
systemctl list-unit-files    # 查看单元文件及其状态
systemctl list-units         # 显示单位是否已加载/活动
systemctl get-default        # 列出默认目标(如运行级别)
systemctl reboot             # 重启系统
systemctl poweroff           # 关闭系统
systemctl emergency          # 进入紧急模式
systemctl default            # 返回默认目标systemctl stop service             # 停止正在运行的服务
systemctl start service            # 启动服务
systemctl restart service          # 重新启动正在运行的服务
systemctl reload service           # 重新加载服务中的所有配置文件
systemctl daemon-reload            # 必须运行以重新加载更改的单元文件
systemctl status                   # 查看服务是否正在运行/启用
systemctl --failed                 # 显示未能运行的服务
systemctl reset-failed             # 将任何单位从失败状态重置
systemctl enable service           # 使服务在启动时启动
systemctl disable service          # 禁用服务 - 不会在启动时启动
systemctl show service             # 显示服务(或其他单元)的属性
systemctl edit service             # 创建片段以放入单元文件
systemctl edit --full service      # 编辑整个单元文件以进行服务
systemctl -H host status network   # 远程运行任何 systemctl 命令journalctl	                       # 显示所有收集的日志消息
journalctl -u network.service	   # 查看网络服务消息
journalctl -f	                   # 关注出现的消息
journalctl -k	                   # 仅显示内核消息

三、SysVinit 到 Systemd

Linux服务启动流程取决于所使用的初始化系统,现代Linux发行版中的两个主要初始化系统是systemd和SysVinit。

systemd是红帽7版本(其他如红旗7等相对应版本)及以上版本所普遍使用;SysVinit是7版本以下所普遍使用。顾名思义,systemd被设计用来改进sysvinit的缺点,所谓的升级加强版。systemd的目标是:尽可能启动更少进程;尽可能将更多进程并行启动。systemd尽可能减少对shell脚本的依赖。传统sysvinit使用inittab来决定运行哪些shell脚本,大量使用shell脚本被认为是效率低下无法并行的原因。

Systemd和SysVinit命令对比:

SysVinitSystemd说明
service SERVICE_NAME startsystemctl start SERVICE_NAME用于启动服务(不重启持久)
service SERVICE_NAME stopsystemctl stop SERVICE_NAME用于停止服务(不永久重启)
service SERVICE_NAME restartsystemctl restart SERVICE_NAME用于停止然后启动服务
service SERVICE_NAME reloadsystemctl reload SERVICE_NAME重新加载配置文件而不中断挂起的操作
service SERVICE_NAME condrestartsystemctl condrestart SERVICE_NAME如果服务已在运行,则重新启动
service SERVICE_NAME statussystemctl status SERVICE_NAME判断服务当前是否正在运行
chkconfig SERVICE_NAME onsystemctl enable SERVICE_NAME打开服务,以便在下次启动时启动,或其他触发器
chkconfig SERVICE_NAME offsystemctl disable SERVICE_NAME为下次重新启动或任何其他触发器关闭服务
chkconfig SERVICE_NAMEsystemctl is-enabled SERVICE_NAME用于检查服务是否配置为在当前环境中启动
chkconfig –listsystemctl list-unit-files –type=service (or)
ls /etc/systemd/system/*.wants/
打印一个服务表,列出每个配置的运行级别打开或关闭
chkconfig –list | grep 5:onsystemctl list-dependencies graphical.target打印启动到图形模式时将启动的服务表
chkconfig SERVICE_NAME –list

ls /etc/systemd/system/*.wants/

SERVICE_NAME.service

用于列出此服务配置为打开或关闭的级别
chkconfig SERVICE_NAME –addsystemctl daemon-reload在创建新服务文件或修改任何配置时使用

Systemd和SysVinit目标运行级别对比:

SysVinitSystemd说明
0runlevel0.target, poweroff.target停止系统
1, s, singlerunlevel1.target, rescue.target单用户模式
2, 4runlevel2.target, runlevel4.target, multi-user.target用户定义/站点特定的运行级别。 默认情况下,与 3 相同
3runlevel3.target, multi-user.target多用户,非图形。 用户通常可以通过多个控制台或通过网络登录
5runlevel5.target, graphical.target多用户,图形。 通常具有运行级别 3 的所有服务以及图形登录
6runlevel6.target, reboot.target重启
emergencyemergency.target应急外壳

资料参考:https://systemd.io/ 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/251294.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构—基础知识:哈夫曼树

文章目录 数据结构—基础知识:哈夫曼树哈夫曼树的基本概念哈夫曼树的构造算法哈夫曼树的构造过程哈夫曼算法的实现算法:构造哈夫曼树 数据结构—基础知识:哈夫曼树 哈夫曼树的基本概念 哈夫曼(Huffman)树又称最优树&…

2024美赛C题完整解题教程及代码 网球运动的势头

2024 MCM Problem C: Momentum in Tennis (网球运动的势头) 注:在网球运动中,"势头"通常指的是比赛中因一系列事件(如连续得分)而形成的动力或趋势,这可能对比赛结果产生重要影响。球…

ChatLaw:基于LLaMA微调的法律大模型

文章目录 动机数据组成模型框架模型评估 北大团队发布首个的中文法律大模型落地产品ChatLaw,为大众提供普惠法律服务。模型支持文件、语音输出,同时支持法律文书写作、法律建议、法律援助推荐。 github地址:https://github.com/PKU-YuanGroup…

红黑树(RBTree)

文章目录 红黑树的概念红黑树的性质红黑树结点定义红黑树的插入红黑树的验证参考源码 除了AVL树,红黑树也是被广泛使用的平衡二叉树。两者都解决了二叉搜索树的平衡问题。 关于AVL树,之前博客有介绍: AVL树 红黑树的概念 红黑树&#xff0c…

【c++】vector用法详解

vector用法详解 vector定义vector容器的构造函数vector容器内元素的访问1.通过下标 [ ]来访问2.通过迭代器来访问3.通过范围for来访问 vector常用函数的用法解析1.size()2.clear()3.capacity()4.reserve()5.resize()6.shrink_to_fit()7.pop_back()8.push_back()9.erase()10.in…

使用潜在向量进行检测、屏蔽和重建以进行遮挡的面部表情识别

Latent-OFER: Detect, Mask, and Reconstruct with Latent Vectors for Occluded Facial Expression Recognition 一、创新点 (1)提出了一种与表情相关的特征提取器,它使用空间注意力为特定的面部特征分配更高的权重,从而使我们能…

【Linux】统信服务器操作系统V20 1060a-AMD64 Vmware安装

目录 ​编辑 一、概述 1.1 简介 1.2 产品特性 1.3 镜像下载 二、虚拟机安装 一、概述 1.1 简介 官网:统信软件 – 打造操作系统创新生态 统信服务器操作系统V20是统信操作系统(UOS)产品家族中面向服务器端运行环境的,是一款…

Python 轻量级定时任务调度:APScheduler

简述 APscheduler (Advanced Python Scheduler),作用为按指定的时间规则执行指定的作业。提供了基于日期date、固定时间间隔interval 、以及类似于Linux上的定时任务crontab类型的定时任务。该框架不仅可以添加、删除定时任务,还可以将任务存储到数据库…

【Docker】WSL(Windows Subsystem for Linux)常见命令解释说明以及简单使用

欢迎来到《小5讲堂》,大家好,我是全栈小5。 这是《Docker容器》序列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对…

使用gcc/g++查看C语言预处理,编译,汇编,连接,以及动静态库的区分

文章目录 使用gcc/ggcc如何完成编译后生成可执行文件?预处理(进行宏替换)编译(生成汇编)汇编(生成机器可识别代码)连接(生成可执行文件或库文件)最后记忆小技巧 在这里涉及到一个重要的概念&…

Pandas.DataFrame.cumsum() 累积和 详解 含代码 含测试数据集 随Pandas版本持续更新

关于Pandas版本: 本文基于 pandas2.2.0 编写。 关于本文内容更新: 随着pandas的stable版本更迭,本文持续更新,不断完善补充。 传送门: Pandas API参考目录 传送门: Pandas 版本更新及新特性 传送门&…

备份RK35XX 设备的ubuntu根文件系统的方法

简介 我们使用 RK35XX 提供的SDK包制作了一个完整的 ubuntu 镜像,烧录到设备中,会在设备中安装很多我们需要的软件,运行的一些自己写的脚本和业务程序,当我们有很多台设备时,不可能每台都一个个去安装,此时我们就需要一个工具来备份当前设备的根文件系统,然后再放到 SD…

智能决策的艺术:探索商业分析的最佳工具和方法

文章目录 一、引言二、商业分析思维概述三、数据分析在商业实践中的应用四、如何培养商业分析思维与实践能力五、结论《商业分析思维与实践:用数据分析解决商业问题》亮点内容简介作者简介目录获取方式 一、引言 随着大数据时代的来临,商业分析思维与实…

C语言指针的几种用途

先看题目,写一个fun函数,统计一个字符串中某个字符出现的次数,以及这个字符第一次出现的位置。 看起来很简单,似乎几行就可以搞定,但是写出来之后,才发现代码怎么这么长!程序里多处使用了指针&…

Elasticsearch(ES) 简述请求操作索引下文档 增删查改操作

上文 Elasticsearch(ES) 创建带有分词器规则的索引 带着大家创建了一个带有分词功能的索引 老规矩 我们启动一下ES服务 本文 我们就来说说 关于文档的操作 我们先来添加一个文档 就像数据库加一条数据一样 这里 并不需要指定什么表结构和数据结构 它的文档结构是无模式的 添…

PyTorch 2.2 中文官方教程(十七)

(Beta)使用缩放点积注意力(SDPA)实现高性能 Transformer 原文:pytorch.org/tutorials/intermediate/scaled_dot_product_attention_tutorial.html 译者:飞龙 协议:CC BY-NC-SA 4.0 注意 点击这…

从领域外到领域内:LLM在Text-to-SQL任务中的演进之路

导语 本文介绍了ODIS框架,这是一种新颖的Text-to-SQL方法,它结合了领域外示例和合成生成的领域内示例,以提升大型语言模型在In-context Learning中的性能。 标题:Selective Demonstrations for Cross-domain Text-to-SQL会议&am…

Jenkins任意文件读取漏洞(CVE-2024-23897)复现

Jenkins 有一个内置的命令行界面CLI,在处理 CLI 命令时Jenkins 使用args4j 库解析 Jenkins 控制器上的命令参数和选项。此命令解析器具有一个功能,可以将参数中后跟文件路径的字符替换为文件内容 ( expandAtFiles)。具有Overall/Read权限的攻击者可以读取…

成都爱尔林江院长解读儿童青少年为什么一定要进行医学验光配镜

根据国家卫健委数据显示:我国青少年儿童总体近视率为52.7%、高度近视人口超3000万。近视学生中,有10%为高度近视,且占比随年级升高而增长。 近视孩子之多,孩子视力发展备受关注。戴镜进行近视防控十分必要,且眼镜不可随意验配! 成…

PAT-Apat甲级题1007(python和c++实现)

PTA | 1007 Maximum Subsequence Sum 1007 Maximum Subsequence Sum 作者 CHEN, Yue 单位 浙江大学 Given a sequence of K integers { N1​, N2​, ..., NK​ }. A continuous subsequence is defined to be { Ni​, Ni1​, ..., Nj​ } where 1≤i≤j≤K. The Maximum Su…