目 录CONTENT

文章目录

💻 工作经历:系统启动 - systemd

TalentQ
2025-08-29 / 0 评论 / 0 点赞 / 5 阅读 / 0 字

为避免泄露内部信息,本文只描述概要信息,不涉及具体的方案细节和实现细节。

0 摘要

终端设备开机启动时,各类服务启动混乱,日志大量飘红,需要整改和重构。梳理现有的全部服务,借助 systemd 和 shell 脚本,重新设计系统启动方案,实现更稳定可控、易定位问题、扩展性更新强的系统启动方式。

systemd相关知识请参考我的另一篇博客:系统管理器——systemd

1 背景

对于当前所有型号的终端设备(包括各类飞机和地面设备),各个自研服务的启动,都各自为战、异常混乱,导致整体系统启动混乱,大量服务相互干扰、启动异常,日志大量飘红,严重影响到系统的稳定性和安全性。

考虑到系统的稳定性和可扩展性,需要为各服务制定相关标准,重新设计系统启动方案。

2 目标

  1. 解耦自研服务和系统其他服务;

  2. 梳理所有自研服务的启动依赖关系,整改启动配置;

  3. 新增启动管理服务,统一管理自研服务的启动,实现服务启动严格可控;

  4. 设计多运行级别(systemd target),适配多种系统运行模型,不仅实现自研服务的可扩展,而且能够随着业务场景的要求实现运行级别的可扩展;

3 方案简述

default.target决定系统启动到哪个级别;无论启动到哪个级别,都要先启动到 multi-user.target。

启动其他系统服务后,此时启动“启动管理服务”,由该服务来统一管理”自研服务“的启动。

结合 systemd-analyze plot可视化服务启动耗时,优化启动时间。

实现“启动级别“可扩展、”自研服务“可控。

4 产出

  1. 系统启动设计文档;

  2. 系统启动方式代码实现;

  3. 系统启动日志分析SOP;

  4. 自研服务启动配置模板;

  5. 提供整改SOP,整改各服务、各型号设备;

  6. 跨团队合作,配合仿真、测试、飞场,结合压测,分析日志,输出测试文档;

0

评论区