我想知道 Linux 启动时显示的消息是什么。
这个屏幕叫什么?
所有滚动的文本是什么意思?
没有错误,但我只是想知道这意味着什么。
答案1
一般来说,开机短信分为两大类:内核初始化输出和服务启动/状态输出。
内核初始化
在现代发行版中,内核初始化输出通常通过传递内核命令行参数默认禁用quiet
。过去,它通常在启动时显示,这通常有助于排除任何启动问题。现在 Linux 已经成熟,启动问题相对较少,因此默认隐藏它们有助于减少用户信息过载。D Schlachter 指出,这些消息稍后可以使用dmesg
命令进行查看,并且它们通常也在服务启动过程的早期记录到存储在 /var/log 中的文件中(主要是为了在系统在一切启动之前出现故障时帮助恢复,从而可以从备用环境(例如实时 CD 或救援 CD)访问系统的内核初始化详细信息)。
内核初始化消息的示例包括:
- 可用/不可用/保留/等内存区域的 RAM 映射
- CPU 详细信息、MTRR、延迟循环校准指标(“BogoMIPS”)
- 硬件初始化(ACPI、PCI、USB 等的控制器;硬件总线扫描、磁盘分区扫描的结果……;……)
服务启动
内核初始化后,引导过程的控制权将移交给名为 的用户空间进程init
。在 Linux 上,该进程通常为 /sbin/init,但也可以使用将init=...
代替其执行的参数将不同的 init 路径传递给内核。此进程控制非内核进程的启动;网络、系统事件日志记录、风扇控制、文件系统挂载(本地和远程)、硬盘监控、音频、服务器进程、UPS 和笔记本电脑电池监控、CPU 频率步进等都是通过 init 执行的脚本启动的。在某个时候,init 将启动某个进程,以便登录系统;这可以是控制台上的基于文本的登录进程、SSH 服务器或依次启动 X Window 的显示管理器。
这是启动的一部分,在文本启动显示屏上,您通常会看到许多进程启动,并且以某种方式被报告为启动正常,其间会有或多或少(通常较少)详细的诊断输出。
进而...?
一旦所有服务都启动了,系统就可以使用了。此时,您可以登录并开始工作。
但是这是什么意思?
您的问题还包括:
所有滚动的文字代表什么意思?
没有错误,但我只是想知道这意味着什么。
不幸的是,这些信息实在太多,而且在不同系统之间变化太大,所以无法很好地回答“它们到底是什么意思?”。如果你从上到下慢慢地筛选这些信息,并且了解系统的硬件布局,通常就很有可能确定各种内核初始化消息实际上指的是什么以及它们意味着什么。如果有一些特定的输出,即使你在网上搜索相关关键词甚至整行都无法弄清楚,你最好具体询问该消息并提供它出现的上下文(不是整个启动输出,除非有人特别要求;前后十几行通常足以建立任何内核初始化消息的上下文)。
请记住,Linux 在启动时所做的工作与任何其他操作系统大致相同:它确定系统的基本配置、扫描硬件、加载任何适当的驱动程序(除非这些驱动程序内置于内核中,在这种情况下它们已经加载)、初始化硬件,然后继续,最终启动提供有意义的用户界面或允许系统执行其任务的进程。Windows 在启动过程中所做的工作大致相同,只是它不会告诉您它在做什么,因此如果出现问题,要告诉您的信息会少得多什么是错的。
记住内核的职责和各种服务(包括 init)的职责之间的区别,通常就可以相当清楚哪个部分做什么。
答案2
您看到的内容通常非常依赖于您的特定计算机和 Linux 发行版 — 您可以使用 dmesg 命令(例如在终端中运行)随意阅读整个文本dmesg | less
。它通常被称为“引导屏幕”或“启动屏幕”。
我不认为有一个来源可以解决所有问题——最有效的方法是谷歌搜索有趣条目中的关键词[1]。
答案3
在某种程度上,这类似于您在开车前检查汽车。我们检查燃料、电池、轮胎等。同样,Linux 通过在启动或引导时查看可用硬件并加载必要的模块来准备计算机以供使用。对很多人来说,这可能并不有趣。然而,Linux 让用户有机会查看启动时是否出了问题..... Windows 用户确实可以选择在启动时查看此过程,因此感觉很奇怪......