news 2026/7/22 6:32:03

CentOS7.9:系统服务管理结构化实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CentOS7.9:系统服务管理结构化实战

一、项目概述
1.1 业务场景说明
CentOS 7 全部服务采用 systemd 进行管理,使用 systemctl 命令管控服务启动、停止、开机自启、查看状态;用来管理 DHCP、TFTP、vsftpd、named、ntpd、network 等服务,保障 PXE 批量装机环境所有服务开机自动运行,完成服务器自动化部署。
1.2 环境参数
项目
参数值
操作系统
CentOS Linux release 7.9‑2009
服务管理工具
systemctl(systemd)
服务文件目录
系统服务:/usr/lib/systemd/system/;用户自定义服务:/etc/systemd/system/
测试服务
dhcpd,vsftpd,named,ntpd,NetworkManager
二、systemctl 基础操作命令
2.1 启停服务命令

启动服务

systemctl start dhcpd

停止服务

systemctl stop dhcpd

重启服务

systemctl restart dhcpd

重新加载配置文件,不中断进程

systemctl reload dhcpd
2.2 查看服务运行状态

查看服务详细状态

systemctl status dhcpd

只查看运行状态(active/inactive)

systemctl is‑active dhcpd
2.3 设置开机自启与关闭开机自启

设置开机自动启动

systemctl enable dhcpd

关闭开机自启

systemctl disable dhcpd

一条命令:启动服务并设置开机自启

systemctl enable --now dhcpd

查看是否开机自启

systemctl is‑enabled dhcpd
三、查看系统服务列表
3.1 查看所有已经运行的服务
systemctl list‑units --type=service --state=running
3.2 查看全部服务(包括未启动服务)
systemctl list‑unit‑files --type=service
3.3 查看开机启动项分类

enabled:开机启动;disabled:开机禁止启动

systemctl list‑unit‑files --type=service | grep enabled
四、运行级别(target 模式)
CentOS7 放弃传统 runlevel,使用 target 模式。

查看当前默认运行级别

systemctl get‑default

切换到字符模式(multi‑user.target)

systemctl set‑default multi‑user.target

切换图形模式(graphical.target)

systemctl set‑default graphical.target

  • multi‑user.target:字符界面,机房服务器标准模式;
  • graphical.target:图形桌面模式。
    五、自定义服务文件实战案例
    创建自定义脚本服务,示例:pxe‑server.service。
    5.1 编写 service 文件
    vi /etc/systemd/system/pxe-server.service
    写入配置:
    [Unit]
    Description=PXE‑Server Service
    After=network.target

[Service]
Type=forking
ExecStart=/root/pxe_start.sh
ExecStop=/root/pxe_stop.sh

[Install]
WantedBy=multi‑user.target
5.2 加载新服务配置
新建或修改 service 文件后,刷新 systemd 配置:
systemctl daemon-reload

启动自定义服务并设置开机自启

systemctl enable --now pxe-server
六、屏蔽服务(彻底禁用服务)
部分服务即使设置 disable,软件安装脚本依旧会触发启动,使用 mask 彻底屏蔽。

屏蔽服务,无法手动启动

systemctl mask firewalld

解除屏蔽

systemctl unmask firewalld
七、ks.cfg 批量装机配置(适配 PXE 项目)
在 % post 脚本批量开启服务开机自启,装机完成自动启动整套 PXE 服务。
%post
systemctl enable --now dhcpd
systemctl enable --now vsftpd
systemctl enable --now named
systemctl enable --now ntpd
%end
八、高频故障总结
故障 1:设置 enable 开机自启后,重启服务器服务没有启动

  • 原因 1:service 配置语法错误;
  • 原因 2:依赖服务(network)启动顺序出错;
  • 解决:systemctl status xxx查看日志,检查 [Unit] 段 After 字段。
    故障 2:reload 命令执行失败,只能 restart
  • 原因:该程序不支持热加载配置;
  • 解决:改用 restart 重启服务。
    故障 3:服务 disable 之后,软件更新又自动开启开机项
  • 原因:rpm 包脚本重新修改启动项;
  • 解决:使用 systemctl mask 彻底屏蔽服务。
    故障 4:自定义 service 文件修改之后配置不生效
  • 原因:没有执行 daemon‑reload 刷新配置;
  • 解决:执行systemctl daemon-reload,再重启服务。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/21 18:06:35

飞牛系统OpenClaw安装配置与优化指南

1. 飞牛OpenClaw安装配置全指南最近在开发者社区看到不少人在讨论飞牛系统上的OpenClaw部署问题。作为一款新兴的AI工具链,OpenClaw确实给开发者带来了不少便利。今天我就来分享一下我在飞牛系统上安装配置OpenClaw的完整过程,包括一些踩坑经验和优化技巧…

作者头像 李华
网站建设 2026/7/21 18:06:43

UE5内嵌Vue网页开发指南:5分钟打通双向通信与实战配置

1. 项目概述:为什么要在UE5里内嵌Vue网页?如果你是一个UE5开发者,最近可能被各种“WebUI”、“内嵌网页”的需求搞得有点头大。无论是想做个带复杂后台管理界面的工具软件,还是想在游戏里塞一个实时更新的排行榜、商城&#xff0c…

作者头像 李华
网站建设 2026/7/21 18:07:23

Unity视频播放器开发:从VideoPlayer组件到自定义UI的完整实现

1. 项目概述:为什么要在Unity里自己造轮子?在Unity里播放视频,听起来是个基础功能,但当你真正动手时,会发现Unity内置的VideoPlayer组件更像一个“发动机”,它只管播放,而一个能用的播放器UI&am…

作者头像 李华
网站建设 2026/7/21 18:08:07

JPEXS Free Flash Decompiler:终极免费SWF反编译工具完整使用指南

JPEXS Free Flash Decompiler:终极免费SWF反编译工具完整使用指南 【免费下载链接】jpexs-decompiler JPEXS Free Flash Decompiler 项目地址: https://gitcode.com/gh_mirrors/jp/jpexs-decompiler 在Flash技术逐渐退出历史舞台的今天,如何保存和…

作者头像 李华
网站建设 2026/7/22 4:27:09

AM64x/AM243x硬件防火墙寄存器配置实战与安全设计

1. 从硬件防火墙到系统安全:AM64x/AM243x防火墙寄存器深度解析在嵌入式系统,尤其是工业控制、汽车电子和高端消费电子领域,系统安全不再是“锦上添花”的选项,而是产品设计的基石。当你的系统需要同时运行实时控制、网络通信和用户…

作者头像 李华
网站建设 2026/7/22 4:27:05

AI Agent 面试题 636:如何设计RAG系统的检索质量监控?

🔥 AI Agent 面试题 636:如何设计RAG系统的检索质量监控?摘要:本文深入解析了「如何设计RAG系统的检索质量监控?」这一 AI Agent 领域的核心面试题。文章从 检索排序优化 的基本概念出发,系统性地剖析了 质…

作者头像 李华