当前位置: 首页 > news >正文

20、深入了解 Linux 启动与关机流程

深入了解 Linux 启动与关机流程

1. Linux 启动与关机概述

在使用 Linux 时,启动过程是不可避免的,了解这个过程至关重要。一般用户把启动过程看作一个黑盒,只等待登录提示出现;而大多数 Linux 用户更具探索精神,想了解其内部工作原理。很多 Linux 用户的机器上有多个操作系统,这给启动带来了挑战。

完整的启动过程从打开电源开关开始,计算机的 BIOS 会到硬盘(或软盘)的特定地址加载引导加载程序(bootstrap loader),它负责加载和启动操作系统。该程序小巧且功能单一,只负责启动操作系统,不关心启动的是哪个系统,这保证了启动的灵活性。

Linux 加载后,会初始化硬件、加载设备驱动,接着内核启动 init 进程,其进程 ID 为 1,是 Linux 系统中所有后续进程的父进程,可在 /sbin 目录找到 init 可执行文件。

关机时不能直接关闭电源,必须先让 Linux 从运行状态正常关闭。因为 Linux 使用内存缓冲区存储文件系统信息,若在数据刷新到磁盘前关机,文件系统可能损坏。

启动过程中会有大量消息显示在控制台,可使用 dmesg 命令查看这些消息。例如:

stimpy $ dmesg > booting.txt stimpy $ cat booting.txt

dmesg 命令的用法如下:

dmesg [-c] [-n level]
  • -c 开关用于打
http://www.cnnetsun.cn/news/3062.html

相关文章:

  • 21、Linux系统安全防护全攻略
  • 22、Linux系统用户与组账户管理全解析
  • 23、Linux系统管理:关键任务与实用工具
  • 24、Linux实用程序全面指南
  • 25、正则表达式:强大的文本处理工具
  • 26、探索 Linux 信息资源的宝库
  • 27、Linux常见问题解答
  • 13、分布式文件系统:原理、特性与服务解析
  • 华为FreeBuds Pro5只显示单耳机电量?解决方法来啦!
  • IEC 60068-2-39环境测试标准:高低温低气压组合测试方法与应用指南
  • ISO13355医疗器械运输振动安全测试规范应用
  • Spring Boot 应用开发:从入门到实践
  • 25、C++ 自定义内存分配器:从无状态到有状态的实现与测试
  • 26、C++ 编程:编译测试与 POSIX 套接字编程指南
  • 27、深入探究UDP与TCP客户端-服务器编程:从原理到实践
  • 28、TCP编程示例:编译、测试与数据包处理
  • 29、C++网络编程与时间接口的编译、测试及使用
  • 30、探索 C++ Chrono API
  • 31、深入探究 POSIX 与 C++ 线程编程
  • 32、C++ 线程:特性、同步与并行计算实例
  • 33、C++ 系统编程:线程、编译测试与错误处理
  • 34、C++ 异常处理:从 setjmp/longjmp 到 C++ 异常
  • IT运维组织架构设计:从技术导向到业务导向转型
  • 5、SuSE Linux 安装与启动全攻略
  • 6、SuSE Linux 安装与 X 窗口系统配置全解析
  • 7、深入了解 SuSE 系统的图形与通信配置
  • 9、SuSE Linux网络配置、传真功能及用户组管理全解析
  • 10、Linux系统管理与内核定制全解析
  • 11、自定义 Linux 内核与网络管理全攻略
  • 12、SuSE Linux网络服务配置全解析