新闻中心

Linux系统启动流程解析_Linux从引导到登录的过程

2025-12-15
浏览次数:
返回列表
Linux启动过程分为四阶段:1. BIOS/UEFI初始化硬件并加载引导程序;2. GRUB2加载内核与initramfs;3. 内核解压、初始化并挂载initramfs执行/init;4. systemd启动服务链,最终运行显示管理器呈现登录界面。

linux系统启动流程解析_linux从引导到登录的过程

Linux系统从按下电源键到出现登录界面,整个过程看似一气呵成,实则由多个阶段协同完成。理解这个流程,对排查启动故障、定制引导行为或优化系统响应都至关重要。

BIOS/UEFI固件初始化与硬件自检

通电后,CPU首先执行主板ROM中的固件代码(传统BIOS或现代UEFI)。它会进行加电自检(POST),检测内存、存储设备、显卡等关键硬件是否就绪,并根据启动顺序查找可引导设备(如硬盘、U盘、网络)。UEFI还会加载安全启动策略并验证引导加载程序签名。

关键点:

  • BIOS模式下,MBR(前512字节)被读入内存并执行;UEFI模式下,固件直接加载EFI系统分区(ESP)中的.efi文件(如grubx64.efi
  • 可通过开机时按Del/F2/F12等键进入固件设置,调整启动顺序或禁用Secure Boot

引导加载程序(Bootloader)接管控制权

主流Linux发行版多使用GRUB2(Grand Unified Bootloader version 2)。它被安装在MBR或ESP中,负责加载内核和初始内存盘(initramfs)。GRUB启动后会显示菜单,允许用户选择内核版本、进入恢复模式或编辑启动参数。

常见操作:

  • 启动时按c键进入GRUB命令行,可手动指定内核和initramfs路径
  • e键临时编辑当前启动项,在linux行末尾添加rd.break可中断initramfs阶段用于密码重置
  • /boot/grub/grub.cfggrub-mkconfig生成,不建议直接修改

内核加载与initramfs解压执行

GRUB将vmlinuz(压缩的Linux内核镜像)和initramfs(初始根文件系统)载入内存并跳转执行。内核解压自身,初始化CPU、内存、中断、设备驱动等核心子系统。随后挂载initramfs为临时根文件系统,运行其中的/init脚本。

达芬奇 达芬奇

达芬奇——你的AI创作大师

达芬奇 166 查看详情 达芬奇

initramfs的作用是:

  • 加载磁盘控制器、加密模块(如LUKS)、LVM或RAID驱动,以便访问真正的根分区
  • 探测并激活根设备(如/dev/sda2或UUID=...),然后切换到真实根文件系统(switch_root)
  • 若缺少必要驱动,系统会卡在“dracut”或“Failed to mount root”提示

用户空间启动:systemd初始化与登录管理器启动

内核通过execve()启动第一个用户进程——通常是/sbin/init,现代发行版默认指向systemd。systemd依据单元文件(.service、.target等)按依赖关系启动服务。

典型启动链路:

  • systemd启动default.target(通常软链接到graphical.target
  • 依次激活multi-user.target → getty.target → getty@tty1.service,最终启动gdm3(GNOME)、sddm(KDE)或lightdm等显示管理器
  • 显示管理器绘制图形登录界面,等待用户输入凭证

可通过systemctl list-units --type=target查看当前激活的目标,用journalctl -b查看本次启动日志。

基本上就这些。每个环节都有明确职责,任一阶段出错都会中断流程。掌握各阶段的关键组件和调试方法,能快速定位黑屏、卡LOGO、无法登录等问题根源。

以上就是Linux系统启动流程解析_Linux从引导到登录的过程的详细内容,更多请关注其它相关文章!


# 柳江区推荐seo方案  # 文件系统  # 系统启动  # 适用于  # 迎刃而解  # 可通过  # 实根  # 同城seo是什么流程  # 神马seo优化排名  # 固件  # 广州网站seo优化软件  # 西城优化网站推广  # 互需产品营销模式推广  # seo网站有优化培训吗多少钱  # seo网页优化策划  # 武进区抖音营销推广哪家好  # 超市营销推广活动策划  # switch  # go  # 显卡  # 字节  # 主板  # u盘  # 硬盘  # ai  # ios  # linux  # bios  # 解压  # linux系统  # 密码重置  # 达芬奇  # 加载  # 管理器 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: QQ邮箱正确登录入口_QQ邮箱官方网站使用地址  蛙漫2日版入口 WAMAN2(日版)无删减漫画官网链接  拼多多购物车商品数量无法修改如何处理 拼多多购物车操作优化方法  sublime怎么格式化代码_sublime代码美化与一键排版插件配置  2025年云电脑操作系统体验 | 无需本地硬件,随时随地使用高性能PC  HTML转PPT成品工具有哪些?HTML网页转PPT成品工具大全  Golang如何实现Web文件静态资源服务器_Golang静态资源服务器开发与实践  基于动态规划的房屋花卉种植最小成本算法详解  Python异步编程实践:使用Binance API构建实时交易数据流  LINQ to XML为何解析失败? 深入理解C# XDocument的异常处理  解决macOS上安装pyhdf时‘hdf.h’文件缺失的编译错误  QQ邮箱网页版入口登录 QQ邮箱在线邮箱官方通道  qq浏览器打开空白页怎么办 qq浏览器启动后显示白屏的解决教程  知乎APP怎么管理已购盐选内容_知乎APP盐选内容购买记录与查看方法  2026年发布! 美少女养成动作RPG《神剑少女战记》发布实机演示  如何使用Node.js csv 包按条件移除含空字段的CSV记录  如何优雅地扩展SprykerGlue后端API授权逻辑,使用spryker/glue-backend-api-application-authorization-connector-extension  蛙漫画网页版全站入口 蛙漫热门作品免费浏览  抓大鹅无需下载版 抓大鹅秒玩版入口  修复二维数组索引越界异常:一维循环到二维坐标的正确映射  J*aScript动态修改指定div内所有a标签样式指南  顺丰快件物流信息 官方网站查询入口  创客贴用户入口官网登录 创客贴网页版电脑版系统  TikTok搜索结果不显示如何解决 TikTok搜索刷新优化方法  Python中高效访问嵌套字典与列表中的键值对  利用Bokeh CustomJS动态控制DataTable列可见性  优化HTML表单样式:解决输入框焦点跳动与元素间距问题  qq游戏大厅官方下载_qq游戏免费下载安装入口  解决Python单元测试中Mock异常方法调用计数为零的问题  飞书妙记怎样用语音转文字速记_飞书妙记用语音转文字速记【速记方法】  Python vgamepad库按键模拟:正确使用XUSB_BUTTON常量  魅族20怎样在浏览器开无图省流_iPhone魅族20浏览器开无图省流【流量节省】  谷歌邮箱注册显示错误Gmail服务器异常与延迟处理  谷歌学术网站直达地址 谷歌学术搜索网页版一键进入  自定义Bag-of-Words实现:处理带负号的词汇权重  高德地图家和公司地址在哪设置 高德地图通勤路线设置方法【超详细】  Steam官网入口直达 Steam注册及登录步骤  夸克浏览器图书入口 夸克手机浏览器阅读入口  谷歌推RCS信息存档功能:公司可监控员工私密信息!  如何优雅地解决Livewire文件上传难题?SpatieLivewireFilepond让一切变得简单  C++如何连接MySQL数据库_C++使用Connector/C++操作MySQL数据库教程  AO3最新可访问网址 Archive of Our Own官方在线入口  CSS响应式网页如何实现主次模块比例自适应_flex-grow与flex-shrink调整  必由学官网入口 必由学教师登录入口  抓大鹅解压小游戏 抓大鹅摸鱼解压入口  QQ网页版官方账号入口 QQ网页版网页版登录指南  漫蛙manwa官网登录界面_漫蛙漫画网页版主站入口  微信怎么把收藏的内容分类管理 微信收藏内容标签分类方法  win11 Snap Layouts怎么用 Win11窗口布局与分屏多任务高效指南【必学】  PDF文件体积过大处理_PDF压缩技巧详解 

搜索