Linux中systemd与systemctl管理指南

Linux中systemd与systemctl管理指南

一、systemd 概述

1. 系统启动流程
  1. 开机自检 → 2. MBR引导 → 3. GRUB菜单 → 4. 加载Linux内核 → 5. 运行 systemd
2. 核心功能
  • 并行启动:加速系统初始化
  • 统一管理:控制启动过程及运行时的系统资源、守护进程(后台服务程序)
  • 按需启动:仅在需要时激活守护进程
  • 依赖管理:自动处理服务间依赖(如在网络不可用时不启动网络服务)
  • 进程跟踪:通过 Linux 控制组(cgroups)管理进程关系

二、systemctl 管理单元

1. 单元类型(Unit Types)

查看命令systemctl -t help

类型 描述
.service 系统服务(最常用)
.socket 进程间通信套接字
.path 文件系统路径触发器
.target 启动目标(类似运行级别)
2. 单元重要操作命令
  1. 状态

    复制代码
    systemctl status 服务名		# 查询详细状态
  2. 启动

    复制代码
    systemctl start 服务名			# 启用服务
  3. 停止

    复制代码
    systemctl stop 服务名			# 停止当前状态
  4. 重启(不推荐使用)

    复制代码
    systemctl restart 服务名		# 先关,再改,后启,会中断服务
  5. 重新加载(推荐使用)

    复制代码
    systemctl reload 服务名		# 不会中断服务,直接加载新配置
    systemctl daemon-reload		  # 重新加载所有单元服务
  6. 禁用

    复制代码
    systemctl disable 服务名		# 下一次状态为禁用
    
    # 在启动时系统会读取的目录下移除软链接
    Removed symlink /etc/systemd/system/multi-user.target.wants/chronyd.service.
  7. 下一次状态启用

    复制代码
    systemctl enable 服务名		# 下一次状态为启用
    
    # 在启动时系统会读取的目录下创建软链接
    Created symlink from /etc/systemd/system/multi-user.target.wants/chronyd.service to /usr/lib/systemd/system/chronyd.service.		
  8. 屏蔽

    复制代码
    systemctl mask 服务名			# 防止管理员意外启动这些冲突的服务
    
    #把文件扔进空目录
    Created symlink from /etc/systemd/system/chronyd.service to /dev/null.
  9. 解除屏蔽

    复制代码
    systemctl unmask 服务名		# 恢复服务可用性
    
    #恢复到原文件
    Removed symlink /etc/systemd/system/chronyd.service.
3. 列出单元状态命令
命令 效果说明
systemctl 查看系统启动时所有单元的状态
systemctl list-unit-files 查看系统中所有单元及当前状态
systemctl --type=service 只显示服务单元类型的状态
systemctl list-units --type=service 列出所有已加载且处于活动状态的服务单元
systemctl is-active 服务名 查询具体某个服务是否处于激活状态
systemctl is-enabled 服务名 查询具体某个服务下次启动的状态

​ 在多数时刻,主要还是查看状态使用systemctl status 服务名命令

相关推荐
Johny_Zhao3 小时前
OpenClaw中级到高级教程
linux·人工智能·信息安全·kubernetes·云计算·yum源·系统运维·openclaw
Sheffield1 天前
Docker的跨主机服务与其对应的优缺点
linux·网络协议·docker
Sheffield1 天前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
Johny_Zhao2 天前
centos7安装部署openclaw
linux·人工智能·信息安全·云计算·yum源·系统运维·openclaw
haibindev2 天前
在 Windows+WSL2 上部署 OpenClaw AI员工的实践与踩坑
linux·wsl2·openclaw
0xDevNull3 天前
Linux切换JDK版本详细教程
linux
进击的丸子3 天前
虹软人脸服务器版SDK(Linux/ARM Pro)多线程调用及性能优化
linux·数据库·后端
茶杯梦轩3 天前
从零起步学习RabbitMQ || 第二章:RabbitMQ 深入理解概念 Producer、Consumer、Exchange、Queue 与企业实战案例
服务器·后端·消息队列
Johny_Zhao5 天前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw