Systemctl | 系统服务管理利器

news2024/11/20 2:25:48

功能介绍

systemctl 是用于管理系统服务的命令行工具,常用于 Linux 系统中。提供了对系统服务(包括启动、停止、重启、启用、禁用等)的控制,以及对系统单元(units)的操作。
image.png

语法结构

systemctl 的基本语法结构为:

systemctl [option] [command] [unit]
  • option:选项,用于指定不同的操作。
  • command:命令,表示要对系统单元执行的操作(如启动、停止等)。
  • unit:系统单元的名称,可以是服务、套接字、设备等。

常用操作和示例

  • 启动服务:

    systemctl start service-name
    
  • 停止服务:

    systemctl stop service-name
    
  • 重启服务:

    systemctl restart service-name
    
  • 启用服务:

    systemctl enable service-name
    
  • 禁用服务:

    systemctl disable service-name
    

历史发展

  • systemctl 是 Systemd(一种系统和服务管理器)的一部分,在 Systemd 取代传统 init 系统(SysVinit)后成为系统服务管理的标准工具。
  • Systemd 通过并行化启动,提高了系统启动速度,并提供强大的管理功能。

systemctl 是管理系统服务的重要工具,提供对系统单元的灵活控制和管理。
systemctl 的高级语法和使用案例包括更多复杂的操作和功能,例如:

1. 查看系统状态和日志

  • 系统状态查看:

    systemctl status
    

    显示系统的当前状态,包括激活的单元、运行状态等信息。

  • 查看特定服务日志:

    journalctl -u service-name
    

    查看特定服务的日志信息,了解服务的运行状态、问题等。

2. 管理系统单元

  • 启动/停止多个服务:

    systemctl start service1 service2
    systemctl stop service1 service2
    

    批量启动或停止多个服务。

  • 启用/禁用多个服务:

    systemctl enable service1 service2
    systemctl disable service1 service2
    

    批量启用或禁用多个服务的自启动。

3. 管理系统的 target

  • 切换系统 target:

    systemctl isolate multi-user.target
    

    切换系统运行的目标 target,如切换到多用户模式。

  • 设置默认 target:

    systemctl set-default graphical.target
    

    设置系统默认启动的 target。

4. 高级控制选项

  • 强制重载配置文件:

    systemctl daemon-reload
    

    强制重新加载配置文件,使更改生效。

  • 重启到救援模式:

    systemctl rescue
    

    将系统重启到救援模式,用于修复系统问题。

  • 重启到固件设置界面:

    systemctl reboot --firmware-setup
    

    将系统重启到固件设置界面。

5. 执行权限管理

  • 提权执行命令:
    systemctl --user start service-name
    
    使用用户权限启动服务。

高级功能

对于 systemctl 的高级脚本和计划任务控制,可以使用 systemd 的单元文件(Unit files)来实现更复杂的任务控制和定时执行。
示例和说明:

1. 使用 systemd 单元文件进行高级脚本控制:

  1. 编写自定义服务单元文件:

    sudo nano /etc/systemd/system/my-script.service
    
  2. 在单元文件中定义服务:

    示例单元文件 my-script.service

    [Unit]
    Description=My Custom Script
    
    [Service]
    Type=oneshot
    ExecStart=/path/to/your/script.sh
    
    [Install]
    WantedBy=multi-user.target
    
  3. 重新加载 systemd 并启用服务:

    sudo systemctl daemon-reload
    sudo systemctl enable my-script.service # 标题
    sudo systemctl start my-script.service
    

创建自定义的 systemd 服务单元,通过 systemctl 控制启动和停止,并在系统启动时自动运行。

2. 使用 systemd 的定时器实现计划任务控制:

  1. 创建定时器单元文件:

    sudo nano /etc/systemd/system/my-backup.timer
    
  2. 定义定时器内容:

    示例定时器文件 my-backup.timer

    [Unit]
    Description=Run my backup script daily
    
    [Timer]
    OnCalendar=daily
    Persistent=true
    
    [Install]
    WantedBy=timers.target
    
  3. 关联定时器和服务:

    创建关联的服务单元文件 my-backup.service,并在定时器中指定要执行的服务。

  4. 重新加载 systemd 并启用定时器:

    sudo systemctl daemon-reload
    sudo systemctl enable my-backup.timer
    sudo systemctl start my-backup.timer
    

创建一个定时器,按照定义的日历计划(在这个示例中是每天)执行相关服务。


::: hljs-center
喜欢的话,请收藏 | 关注(✪ω✪)
……万一有趣的事还在后头呢,Fight!!(o-)尸~''☆ミ☆ミ……

:::

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

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

相关文章

burpsuite的安装与介绍

安装(挑一个你喜欢的版本安装就行) 编程环境安装指南:Java、Python 和 Burp Suite抓包工具_burpsuite和java-CSDN博客 简介 Burp Suite是一个用于攻击Web应用程序的集成平台。它集成了多种渗透测试组件,能够帮助我们更好地完成对Web应用的渗透测试和攻击,无论是自动化还…

记一次Mac端mysql重置密码

在执行mysql命令的时候,报如下的错误,表示不支持mysql命令: zsh: command not found: mysql 1. 先查看mysql服务是否存在 在系统偏好设置中查看: 2. 发现mysql服务已经在运行,可能因为/usr/local/bin目录下缺失mysq…

信号处理设计模式

问题 如何编写信号安全的应用程序? Linux 应用程序安全性讨论 场景一:不需要处理信号 应用程序实现单一功能,不需要关注信号 如:数据处理程序,文件加密程序,科学计算程序 场景二:需要处理信…

Xshell连接不上本地虚拟机中的linux处理

0、连接不上虚拟机的原因 1、本地电脑未启用VMware网络。 2、连接协议选择错误。 3、防火墙屏蔽IP。 4、虚拟机网络连接模式不是桥接模式。 1、查看本地是否启用VMware的网络 2、连接协议选择 我们在新建会话时,可选的协议有FTP和SFTP两种,其中FTP采用21…

uniapp 手持弹幕全端实现(微信/QQ小程序 + APP)

见下述效果图,本文话少纯干货 代码实现 <template><view class="main"

【RocketMQ笔记02】安装RocketMQ可视化工具rocketmq-dashboard

这篇文章&#xff0c;主要介绍如何安装RocketMQ可视化工具rocketmq-dashboard。 目录 一、RocketMQ可视化界面 1.1、下载rocketmq-dashboard 1.2、修改配置文件 1.3、打包工程 1.4、启动rocketmq-dashboard 一、RocketMQ可视化界面 1.1、下载rocketmq-dashboard rocketm…

NET中使用Identity+CodeFirst+Jwt实现登录、鉴权

目录 前言 一、创建上下文类 1.自定义MyContext上下文类继承IdentityDbContext 2.在Program中添加AddDbContext服务 二、使用Migration数据迁移 1.在控制台中 依次使用add-migration 、updatebase 命令 2.如何修改表名 3.如何自定义字段 三、使用Identity实现登录、修改密码 …

汽车零配件装配产线中使用RFID技术和不使用RFID技术的优缺点

汽车零配件装配产线中使用RFID技术和不使用RFID技术的优缺点 RFID(射频识别技术)是非接触式自动识别技术&#xff0c;经常被使用于工业制造、物流管理、仓储物品盘点等领域。我们聊一聊在汽车零配件装配产线中使用和不使用RFID技术的优缺点 在汽车零配件装配线使用RFID技术可以…

「GPT」G、P、T分别是啥意思?

G意为Generative &#xff1a;生成式 比如&#xff0c;生成式的分类器&#xff08;模型&#xff09;包括---- generative classifiers: naive Bayes classifier and linear discriminant analysis 与之对应的为判别式----- discriminative model: logistic regression P意为…

每日一题——LeetCode206.反转链表

个人主页&#xff1a;白日依山璟 专栏&#xff1a;Java|数据结构与算法|每日一题 文章目录 1. 题目描述示例1示例2示例3提示 2. 思路3.代码 1. 题目描述 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例1 输入&#xff1a;head [1…

讯飞星火认知大模型智能语音交互调用

随着国内外大模型热度的兴起&#xff0c;依托于大模型的智能化&#xff0c;传统的人机交互已经不能满足人们交互的需求。而结合语音和大模型的交互拜托传统互联网获取知识的文字限制&#xff0c;用语音也可以轻松获取想要的知识和思路。 一、大模型智能语音交互调用实现思路 …

nginx-proxy-manager初次登录502 bad gateway

nginx-proxy-manager初次登录502 bad gateway 按照官方docker-compose安装后,页面如下: 默认账户密码: adminexample.com/changeme点击sign in,提示Bad Gateway 打开调试 重装后依然如此,最后查阅githup issue 找到答案 https://github.com/NginxProxyManager/nginx-proxy-…

16.Redis 高级数据类型 + 网站数据统计

目录 1.Redis 高级数据类型 2.网站数据统计 2.1 业务层 2.2 表现层 2.2.1 记录数据 2.2.2 查看数据 1.Redis 高级数据类型 HyperLogLog&#xff1a;采用一种基数算法&#xff0c;用于完成独立总数的统计&#xff1b;占据空间小&#xff0c;无论统计多少个数据&#xff0…

Oraclelinux部署Oracle服务

采用图形化界面 user用户 oracle用户 #清屏 clear #设置主机名 hostnamectl set-hostname ceshidb sed -i 1,2 s/^/#/ /etc/hosts echo "127.0.0.1 ceshidb" >> /etc/hosts echo "::1 ceshidb" >> /etc/hosts ping -c 5…

STM32F4系列单片机库函数模板工程创建

目录 一、工程配置 1、新建工程 2、芯片选择 3、工程子文件夹创建 &#xff08;1&#xff09;FWLIB文件夹添加文件 &#xff08;2&#xff09;CORE文件夹添加文件 &#xff08;3&#xff09;USER文件夹添加文件 4、工程设置 &#xff08;1&#xff09;工程中添加文件夹…

记一次redis内存没满发生key逐出的情况。

现象&#xff1a; 从监控上看&#xff0c;redis的内存使用率最大是80%&#xff0c;但是发生了key evicted 分析&#xff1a; 原因1、可能是阿里云监控没抓取到内存100%监控数据。 阿里控制台监控监控粒度是5秒。 内存使用率的计算方法。 used_memory_human/maxmemory 原因2、…

uniapp APP应用程序iOS没有上架到苹果应用商店如何整包更新?

随着移动互联网的快速发展&#xff0c;uni-app 作为一种跨平台开发框架&#xff0c;受到了广泛欢迎。然而&#xff0c;有时候开发者可能会遇到一个问题&#xff1a;如何为已经发布到苹果应用商店的 uni-app APP 进行整包更新&#xff1f;尤其是当应用还没有上架到苹果应用商店时…

MongoDB数字字符串排序问题

问题描述 MongoDB中有一个集合t_test_sort结构如下&#xff0c;其中数值字段value为字符串类型&#xff0c;现想按照value的数值大小进行降序排列。 {"_id" : ObjectId("656c87b36ca8100cd4a60348"),"name" : "麻了","date&quo…

Spark与Hadoop的关系和区别

在大数据领域&#xff0c;Spark和Hadoop是两个备受欢迎的分布式数据处理框架&#xff0c;它们在处理大规模数据时都具有重要作用。本文将深入探讨Spark与Hadoop之间的关系和区别&#xff0c;以帮助大家的功能和用途。 Spark和Hadoop简介 1 Hadoop Hadoop是一个由Apache基金会…

Upload-lab(pass1~2)

Pass-1-js检查 这里检验 因为是前端js校验,所以只用绕过js前端校验 用burp抓包修改文件类型 写一个简易版本的php Pass-2-只验证Content-type 仅仅判断content-type类型 因此上传shell.php抓包修改content-type为图片类型&#xff1a;image/jpeg、image/png、image/gif