讲师中心 微信公众号

工具推荐

视频效率加速
Seko
Seko

AI短剧一键生成成片

立刻MV
立刻MV

低成本歌曲 MV、视频生成

剧云
剧云

中文短剧剧本制作平台

Laper
Laper

剧本策划到成片协作

Linux 系统启动流程详解与优化方案

秋静酱_1810

秋静酱_1810

发布时间:2026-02-11 20:58:43

|

857人浏览过

|

来源于php中文网

原创

systemd 启动卡在 Plymouth 是因超时等待而非真卡死,常见于显卡驱动未加载或 GRUB splash 参数不匹配;可通过 TTY 查状态、GRUB 临时调试或修改 /etc/default/grub 永久解决。

linux 系统启动流程详解与优化方案

systemd 启动卡在 Starting Wait for Plymouth Boot Screen... 怎么办

这其实是 Plymouth(图形启动画面)和 systemd 的超时协作问题,不是真卡死,而是等待某个服务超时后才继续。常见于显卡驱动未加载或 /etc/default/grub 中 splash 参数与实际环境不匹配。

  • 先用 Ctrl+Alt+F2 切到 TTY,运行 sudo systemctl status plymouth-start 看是否报 Timeout was reached
  • 临时绕过:重启时在 GRUB 菜单按 e,找到以 linux 开头的行,删掉 splash 和 quiet,加 systemd.log_level=debug,然后 Ctrl+X 启动——能快速定位卡在哪一步
  • 永久修复:编辑 /etc/default/grub,把 GRUB_CMDLINE_LINUX_DEFAULT="splash quiet" 改成 GRUB_CMDLINE_LINUX_DEFAULT="",再运行 sudo update-grub
  • 注意:NVIDIA 闭源驱动下 Plymouth 默认不工作,强行启用反而导致黑屏或无限等待

如何确认 init 进程到底是 systemd 还是 sysvinit

别信 ps -p 1 -o comm= 的表面输出,有些发行版会伪造进程名。真实判断依据只有一个:看 /proc/1/exe 指向哪里。

  • 执行 ls -l /proc/1/exe,如果指向 /lib/systemd/systemd 或 /usr/lib/systemd/systemd,就是 systemd
  • 如果指向 /sbin/init 且 file /sbin/init 显示 “ELF 64-bit LSB pie executable, x86-64” 但没提 systemd,大概率是 sysvinit 或 runit
  • Ubuntu 22.04+、CentOS 8+、Arch 默认用 systemd;Debian 10 以前、Alpine 默认不用;RHEL 7 是 systemd 分水岭
  • 混用风险:在 systemd 系统里手动启动 /sbin/init 会导致进程树混乱,systemctl 命令失效

systemctl list-dependencies --reverse 显示一堆 multi-user.target 是啥意思

这不是错误,是 target 依赖关系的正常展开方式。multi-user.target 是大多数非图形系统的“终点目标”,很多服务都声明自己 WantedBy=multi-user.target,所以反查时它会高频出现。

Linux Security Scanner
Linux Security Scanner

Linux 安全审计工具,检查 SSH 配置、开放/监听端口、防火墙规则(ufw/iptables/nftables)、失败登录尝试、sudoers 权限...

下载
  • 真正该关注的是那些没启动、状态为 inactive (dead) 或 failed 的单元,它们才是拖慢启动的元凶
  • 用 systemd-analyze blame 看耗时最长的前 10 个服务,比依赖图更直接
  • 用 systemd-analyze critical-chain 查从启动到某个 target(如 default.target)的最长路径,能暴露关键阻塞点
  • 注意:--reverse 不显示 socket 或 timer 触发的服务,这类服务可能延迟启动但不计入初始依赖链

禁用 NetworkManager-wait-online.service 安全吗

安全,只要你的服务不依赖网络就绪信号。这个 service 的作用只是让 multi-user.target 等待所有 NetworkManager 管理的连接“上线”,但它本身不提供网络功能。

  • 典型不安全场景:你写了自定义服务,After=network-online.target 且没设 Wants=network-online.target,又依赖 DNS 解析——禁用后可能启动失败
  • 安全做法:运行 sudo systemctl disable NetworkManager-wait-online.service,再检查 systemctl list-dependencies multi-user.target 是否还有其他网络等待项
  • 替代方案:保留它,但缩短超时,在 /etc/systemd/system/NetworkManager-wait-online.service.d/timeout.conf 里写 [Service]\nTimeoutStartSec=10
  • 云服务器常见坑:某些镜像把 SSH 启动绑在 network-online.target 上,禁用后 SSH 可能晚几十秒才响应

启动流程里最麻烦的从来不是哪一步慢,而是多个服务之间隐含的启动顺序冲突——比如一个服务等网络,另一个等磁盘,而磁盘挂载又依赖网络存储。这种环状依赖不会报错,只会让 systemd 反复重试直到超时。

热门AI工具

更多
Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

码上飞
码上飞 Hot

一款基于自然语言的AI应用开发平台,可根据用户描述自动生成应用程序,帮助个人和团队快速完成应用原型与开发。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

相关专题

更多
堆和栈的区别
堆和栈的区别

堆和栈的区别:1、内存分配方式不同;2、大小不同;3、数据访问方式不同;4、数据的生命周期。本专题为大家提供堆和栈的区别的相关的文章、下载、课程内容,供大家免费下载体验。

6927

2023.07.18

堆和栈区别
堆和栈区别

堆(Heap)和栈(Stack)是计算机中两种常见的内存分配机制。它们在内存管理的方式、分配方式以及使用场景上有很大的区别。本文将详细介绍堆和栈的特点、区别以及各自的使用场景。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

2848

2023.08.10

default gateway怎么配置
default gateway怎么配置

配置default gateway的步骤:1、了解网络环境;2、获取路由器IP地址;3、登录路由器管理界面;4、找到并配置WAN口设置;5、配置默认网关;6、保存设置并退出;7、检查网络连接是否正常。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

377

2023.12.07

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

4530

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

3793

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

3113

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

7690

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

7322

2023.07.06

Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

0

2026.11.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn