Linux命令-systemctl

news2024/11/15 17:35:04

一、systemctl命令简介

CentOS 5使用SysV init;CentOS 6使用Upstart,CentOS 7使用Systemd管理守护进程。centos7采用 systemd管理,服务独立的运行在内存中,服务响应速度快,但占用更多内存。独立服务的服务启动脚本都在目录 /usr/lib/systemd/system里。Systend的新特性:

系统引导时实现服务的并行启动;
按需激活进程;
系统实现快照;
基于依赖关系定义服务的控制逻辑;
  systemctl可用于内省和控制“systemd”系统和服务管理器的状态。centos7.x系统环境下我们经常使用此命令启停服务,实际上此命令除了其他独立服务还有很多其他用途。

二、systemctl使用示例

1、查看命令帮助

[root@s153 system]# systemctl --help
systemctl [OPTIONS…] {COMMAND} …

2、启动服务

接下来的操作实例以管理xinetd服务为例。

[root@s153 system]# systemctl start xinetd

3、查看服务状态

[root@s153 system]# systemctl status xinetd ● xinetd.service - Xinetd
A Powerful Replacement For Inetd Loaded: loaded
(/usr/lib/systemd/system/xinetd.service; enabled; vendor preset:
enabled) Active: active (running) since 三 2022-07-20 10:29:26 CST;
1min 53s ago Process: 15831 ExecStart=/usr/sbin/xinetd -stayalive
-pidfile /var/run/xinetd.pid $EXTRAOPTIONS (code=exited, status=0/SUCCESS) Main PID: 15832 (xinetd) CGroup:
/system.slice/xinetd.service └─15832 /usr/sbin/xinetd -stayalive
-pidfile /var/run/xinetd.pid

4、停止服务

[root@s153 system]# systemctl stop xinetd

5、查看服务是否活跃

[root@s153 system]# systemctl is-active xinetd
inactive
[root@s153system]# systemctl start xinetd
[root@s153 system]# systemctl
is-active xinetd
active

6、重新加载服务配置

reload是在不重启服务的情况下重新加载配置文件。

[root@s153 system]# systemctl reload xinetd

7、重启服务

restart命令实际上是先stop,然后start。

[root@s153 system]# systemctl restart xinetd

8、列出所有可用单元

在这里插入图片描述

[root@s153 system]# systemctl list-unit-files
UNIT FILE STATE
proc-sys-fs-binfmt_misc.automount static
dev-hugepages.mount static …

9、列出所有已加载单元

在这里插入图片描述

[root@s153 system]# systemctl list-units
UNIT LOAD ACTIVE SUB
DESCRIPTION
proc-sys-fs-binfmt_misc.automount loaded active waiting Arbitrary Executable File Formats File System Automount Point sys-devices-pci0000:00-0000:00:01.1-ata2-host1-target1:0:0-1:0:0:0-block-sr0.device loaded active plugged QEMU_DVD-ROM CentOS_7_x86_64
sys-devices-pci0000:00-0000:00:05.0-virtio1-host2-target2:0:0-2:0:0:0-block-sda-sda1.device loaded active plugged
QEMU_HARDDISK 1

10、查看可用systemctl管理的所有服务

在这里插入图片描述

systemctl可用管理单元分很多种,日常工作中我们仅仅用于管理服务,unit的常见类型:

Service unit: 文件扩展名.service, 用于定义系统服务;
Target unit: 文件扩展名.target, 用于模拟实现"运行级别";
Device unit: 文件扩展名.device, 用于定义内核识别的设备;
Mount unit: 文件扩展名.mount, 用于定义文件系统的挂载点;
Socket unit: 文件扩展名.socket, 用于标识进程间通信用到的socket文件;
Snapshot unit: 文件扩展名.snapshot, 用于管理系统快照;
Swap unit: 文件扩展名.swap, 用于标识swap设备;
Automount unit: 文件扩展名.automount, 用于定义文件系统自动点设备;
Path unit: 文件扩展名.path, 用于定义文件系统中的一文件或目录;

11、注销服务

服务被注销后该服务就无法通过systemctl进行启停管理。

[root@s153 system]# systemctl mask firewalld
Created symlink from /etc/systemd/system/firewalld.service to /dev/null.
[root@s153 system]# systemctl start firewalld
Failed to start firewalld.service:Unit is masked.

12、取消注销服务

[root@s153 system]# systemctl unmask firewalld
Removed symlink /etc/systemd/system/firewalld.service.
[root@s153 system]# systemctl start firewalld

13、设置服务开机自启动

[root@s153 system]# systemctl enable xinetd.service
Created symlink from /etc/systemd/system/multi-user.target.wants/xinetd.service to /usr/lib/systemd/system/xinetd.service.

14、取消服务开机自启动

[root@s153 system]# systemctl disable xinetd.service
Removed symlink /etc/systemd/system/multi-user.target.wants/xinetd.service.

15、查看机器信息

[root@s153 system]# systemctl list-machines NAME STATE FAILED JOBS
s153 (host) running 0 0
1 machines listed.

16、查看系统环境变量

[root@s153 system]# systemctl show-environment
LANG=zh_CN.UTF-8
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin

17、重新加载unit文件

如果手动修改了unit文件,可以使用此命令重新加载。

[root@s153 system]# systemctl daemon-reload

18、创建一个系统快照

[root@s153 system]# systemctl snapshot
wuhs wuhs.snapshot

19、删除指定快照

[root@s153 system]# systemctl delete wuhs

20、查看服务是否开机自启动

[root@s153 system]# systemctl is-enabled xinetd.service
enabled

21、杀死服务

[root@s153 system]# systemctl kill xinetd
[root@s153 system]#systemctl is-failed xinetd inactive

22、进入救援模式

[root@s153 system]# systemctl rescue

Broadcast message from root@s153 on pts/1 (三 2022-07-20 13:08:30 CST):

The system is going down to rescue mode NOW!
#执行完命令后系统就进入了救援模式

#救援模式下切换到默认模式
[root@s153 ~]# systemctl default

23、关闭系统

[root@s153 ~]# systemctl poweroff

24、重启机器

[root@s153 ~]# systemctl reboot

25、系统睡眠

suspend暂停模式,类似window环境的睡眠模式,会将系统的状态数据保存到内存中,然后关闭掉大部分的系统硬件,当然,并没有实际关机。当用户按下唤醒机器的按钮,系统数据会重内存中回复,然后重新驱动被大部分关闭的硬件,就开始正常运作!唤醒的速度较快。

[root@s153 ~]# systemctl suspend

26、查看系统启动模式

[root@s153 boot]# systemctl get-default
multi-user.target

27、设置系统为图形界面启动

[root@s153 system]# systemctl set-default graphical.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.

三、systemctl参数说明

1、使用语法

用法:systemctl [OPTIONS…] {COMMAND} …

2 、参数说明

在这里插入图片描述
在这里插入图片描述

3、unit file结构

文件通常由三部分组成:

[Service]:与特定类型相关的专用选项;此处为Service类型。
[Install]:定义由"systemctl enable"及"systemctl disable"命令在实现服务启用或禁用时用到的一些选项。

4、Unit段的常用选项

Description:描述信息,意义性描述;
After:定义unit的启动次序;表示当前unit应晚于哪些unit启动;其功能与Before相反;
Requies:依赖到其它的units;强依赖,被依赖的units无法激活时,当前的unit即无法激活;
Wants:依赖到其它的units;弱依赖;
Confilcts:定义units 的冲突关系;

5、Service段的常用选项

Type:用于定义影响ExecStart及相关参数的功能的unit进程类型;
类型有:simple、forking、oneshot、dbus、notify、idle。
EnvironmentFile:环境配置文件;
ExecStart:指明启动unit要运行的命令或脚本;ExecStart, ExecStartPost
ExecStop:指明停止unit要运行的命令或脚本;
Restart:

6、Install段的常用配置:

Alias:
RequiredBy:被哪些unit所依赖;
WantBy:被哪些unit所依赖;

7、Unit文件样例

[root@s153 system]# cat chronyd.service
Unit Description=NTP client/server Documentation=man:chronyd(8) man:chrony.conf(5)
After=ntpdate.service sntp.service ntpd.service
Conflicts=ntpd.service systemd-timesyncd.service
ConditionCapability=CAP_SYS_TIME

[Service]
Type=forking
PIDFile=/var/run/chronyd.pid
EnvironmentFile=-/etc/sysconfig/chronyd
ExecStart=/usr/sbin/chronyd $OPTIONS
ExecStartPost=/usr/libexec/chrony-helper update-daemon
PrivateTmp=yes
ProtectHome=yes
ProtectSystem=full

[Install]
WantedBy=multi-user.target

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PFEA113-65 3BSE050092R65

PFEA113-65 3BSE050092R65 PFEA113-65 3BSE050092R65 言简意赅的简历最受名企欢迎 "... 受欢迎 采访对象:ABB(中国)有限责任公司 人力资源经理唐炜女士 ABB是根据每个职位的岗位描述和 ... ; 对于应届毕业生的简历&#x…

新能源、新智造、新技术、新未来2024上海国际氢能产业展览会7月魔都开展!

氢能作为一种来源丰富、绿色低碳、应用广泛的二次能源,是实现可再生能源大规模消纳,电网大规模调峰和跨季节、跨地域储能的重要途径,对构建我国新型电力系统和实现碳达峰碳中和目标具有重要意义。 为落实国家关于发展氢能产业的决策部署&…

BGP路由反射-数据中心IDC项目经验

一、背景描述 R1,R2,R3在AS200区域内,R1和R2,R1和R3建立OSPF,宣告接口互联. AS200区域内,R1和R2建立IBGP, R1和R3建立IBGP R2和R4建立EBGP, R3和R5建立EBGP。 网络拓扑: 二、故障现象 R1和R2可以收到来自AS100区域R4的E…

臻于至善,CodeArts Snap 二维绘图来一套不?

前言 我在体验 华为云的 CodeArts Snap 时,第一个例子就是绘制三角函数图像,功能注释写的也很简单。 业务场景中,有一类就是需要产出各种二维图形的,比如,折线图、散点图、柱状图等。 为了提前积累业务素材&#xf…

cocos creator 碰撞系统

设置碰撞组件 * 添加组件中添加碰撞组件 3种组件类型,矩形碰撞,圆形碰撞, 多边形碰撞 开启碰撞检测 start() {//开启碰撞管理器let cm cc.director.getCollisionManager()cm.enabled true//绘制碰撞检测边界线。用于调试cm.enabledDebug…

SpringCloud Alibaba Sentinel 与 SpringCloud Gateway 的限流有什么差别?(三种限流算法原理分析)

目录 一、Sentinel 与 Gateway 的限流有什么差别? 1.1、前置知识 - 四种常见的限流算法 1.1.1、Tips 1.1.2、计数器算法 1)固定窗口计数器算法 2)滑动窗口计数器算法 1.1.3、令牌桶算法 1.1.4、漏桶算法 1.2、解决问题 一、Sentinel…

PMP考试刷题记录20240125

1、所有干系人都在开会讨论一个新项目,该项目预计将在一个月内启动,并持续至少10次迭代,其中一个干系人提到应该有人负责开发和维护产品路线图。谁应该承担这个责任? A.项目经理 B.开发团队 C.ScrumMaster D.产品负责人 答案&#xff1…

使用X11VNC远程连接统信UOS

原文链接:使用X11VNC远程连接统信UOS hello,大家好!继我们之前介绍了使用xrdp远程连接统信UOS桌面操作系统后,今天我要带大家了解另一种远程连接方法——使用X11VNC。通过在统信UOS上安装X11VNC服务,您可以轻松地实现从…

python pip安装包时,出现 WARNING: Ignoring invalid distributio xxxx,解决办法

pip安装包时,出现 WARNING: Ignoring invalid distributio xxxx,解决办法 遇到的问题,如图 这个问题其实就是python环境下的包无效了,找到WARNING: Ignoring invalid distributio xxxx后面对应的路径,删除对应的~XXXX…

初探二分法

推荐阅读 智能化校园:深入探讨云端管理系统设计与实现(一) 智能化校园:深入探讨云端管理系统设计与实现(二) 文章目录 推荐阅读题目解法一解法二 题目 题目:给定一个 n 个元素有序的&#xff0…

C语言——联合和枚举

目录 一、联合体 1.1 联合体类型的声明 1.2 联合体的特点 1.3 相同成员的结构体和联合体对比 1.4 联合体大小的计算 1.5 联合的⼀个练习 二、枚举类型 2.1 枚举类型的声明 2.2 枚举类型的优点 2.3 枚举类型的使用 一、联合体 1.1 联合体类型的声明 像结构体⼀样…

【AI】深度学习与图像描述生成——看图说话(1)

还记得我闲来无事,用大模型来“洗图”吗,就是想抄袭别人的图,但是又要装作原创的样子。因为洗稿大家都熟悉,洗图其实也是一样的。 【AIGC】今天想用AI“洗个图”,失败了,进来看我怎么做的-CSDN博客 【AIG…

【QT+QGIS跨平台编译】之八:【zstd+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

文章目录 一、zstd介绍二、文件下载三、文件分析四、pro文件五、编译实践一、zstd介绍 ZSTD(Zstandard的缩写),是一种快速压缩算法,提供了高压缩比功能。ZSTD还为小数据提供了一种特殊的模式,称为字典压缩。ZSTD库使用BSD许可证作为开放源码软件提供的。它的格式是稳定的,…

Unity中URP下计算额外灯的方向

文章目录 前言一、为什么额外灯的方向,不像主平行灯一样直接获取?1、主平行灯2、额外灯中,包含 点光源、聚光灯 和 平行灯 二、获得模型顶点指向额外灯的单位向量三、Unity中的实现 前言 在上一篇文章中,我们获取了URP下额外灯的…

LINUX 防火墙 firewalld-cmd命令

常用命令 开启端口命令 firewall-cmd --zonepublic --add-port443/tcp --permanent –zone #作用域 –add-port80/tcp #添加端口,格式为:端口 / 通讯协议 –permanent #永久生效,没有此参数重启后失效 关闭端口命令 firewall-cmd --zo…

qt学习:QListWidget控件+自定义条目项+双击删除+单击获取

目录 图片 头函数 接口 显示案例 方法1 方法2 方法3 方法4 自定义 方法5 在方法4上实现 图片 头函数 #include <QListWidgetItem> 接口 //不怎么常用void addItem(const QString &label)void addItems(const QStringList &labels) //自定义条目项…

Vue2 - keep-alive 作用和原理

目录 1&#xff0c;介绍和作用2&#xff0c;原理3&#xff0c;使用场景3.1&#xff0c;效果展示3.2&#xff0c;实现思路 1&#xff0c;介绍和作用 <!-- 非活跃的组件将会被缓存&#xff01; --> <keep-alive><component :is"activeComponent" />…

静态web服务器实战

准备html页面&#xff0c;包含两个页面(index.html, index2.html)和一个404(404html)页面&#xff0c;目录示意&#xff1a; 1.返回固定页面 with open("website/index.html","r") as file: import socket# # 返回固定的页面 website/index.html if __na…

深度学习笔记(九)——tf模型导出保存、模型加载、常用模型导出tflite、权重量化、模型部署

文中程序以Tensorflow-2.6.0为例 部分概念包含笔者个人理解&#xff0c;如有遗漏或错误&#xff0c;欢迎评论或私信指正。 本篇博客主要是工具性介绍&#xff0c;可能由于软件版本问题导致的部分内容无法使用。 首先介绍tflite: TensorFlow Lite 是一组工具&#xff0c;可帮助开…

调优 mybatis saveBatch 25倍性能

调优 mybatis saveBatch 25倍性能 最近在压测一批接口&#xff0c;发现接口处理速度慢的有点超出预期&#xff0c;感觉很奇怪&#xff0c;后面定位发现是数据库批量保存这块很慢。 这个项目用的是 mybatis-plus&#xff0c;批量保存直接用的是 mybatis-plus 提供的 saveBatch…