分析启动日志文件(例如 Ntbtlog.txt)以排查 Windows 启动失败问题

最后更新: 31/03/2026
作者: 艾萨克
  • Windows 启动过程分为多个阶段(启动前、启动管理器、操作系统加载器和内核),每个阶段出现故障时都会表现出不同的症状。
  • Startup Repair、BOOTREC、BCDEDIT 和 RegBack 等工具可以修复损坏的 MBR、引导扇区、BCD 和注册表单元。
  • 启动日志 Ntbtlog.txt 由 boot.ini 或 BCDEDIT 激活,记录已加载和已跳过的驱动程序,是诊断故障的关键。
  • 结合启动日志、事件查看器、SFC/DISM 和内存转储,可以更轻松地找到阻止 Windows 启动的驱动程序或更新。

Windows 启动日志 Ntbtlog.txt

当 Windows 系统拒绝启动并卡在黑屏、重启循环或蓝屏界面时通常的反应是惊慌失措。但除了典型的自动化工具之外,还有一种非常强大的资源可以帮助我们了解发生了什么:启动日志文件或 启动日志尤其是众所周知的 Ntbtlog.txt.

这些日志详细记录了系统启动期间哪些驱动程序和组件加载(或加载失败)并结合其他实用程序,例如启动修复, BOOTREC, DISM 或者 Windows 注册表本身,可以让你找到许多启动问题的根源,无论是在具有传统 BIOS 的计算机中,还是在具有 UEFI 的现代系统中(UEFI 中的启动过程).

Windows启动过程是怎样的?故障发生在哪个阶段?

开始复习之前 Ntbtlog.txt 将命令粘贴到控制台了解 Windows 启动过程的组织方式以及每个阶段激活的组件至关重要。这有助于确定错误是发生在启动初期(固件/BIOS)、启动管理器、操作系统加载程序,还是 Windows 内核启动时。

一般来说,现代Windows系统的启动周期分为四个主要阶段。 这些情况在传统的 BIOS 机器和 UEFI 固件系统中都会出现,尽管涉及的文件和路径略有不同:

  • 第一阶段 – 启动前固件(BIOS 或 UEFI)执行 POST(开机自检),初始化基本硬件,并查找有效的系统磁盘。在 BIOS 系统中,读取 MBR/PBR;在 UEFI 系统中,加载固件,并查找 Windows 启动管理器 EFI 应用程序。
  • 第二阶段 – Windows 启动管理器这时启动管理器就发挥作用了,它会查找启动配置并决定启动哪个系统。
  • 第三阶段 – Windows 操作系统加载器系统充电器(winload.exe o winload.efi)加载内核和标记为在启动时加载的驱动程序。
  • 第四阶段 – Windows NT 内核内核(ntoskrnl.exe)取得控制权,挂载系统注册表单元,加载驱动程序 BOOT_START 系统会话开始(Smss.exe),进而启动其余的服务和控制器。

每个阶段都有其独特的症状和错误信息。从常见的“Bootmgr 缺失”错误到诸如 INACCESSIBLE_BOOT_DEVICE 或者在 Windows 徽标出现后立即出现蓝屏,因此需要使用不同的工具进行诊断和修复。

舞台 带BIOS的设备 支持 UEFI 的设备
1 预引导 MBR/PBR(启动代码) UEFI固件
2 Windows 启动管理器 %系统驱动器%\bootmgr \EFI\Microsoft\Boot\bootmgfw.efi
3 Windows操作系统加载器 %SystemRoot%\System32\winload.exe %SystemRoot%\System32\winload.efi
4 Windows NT 内核 %SystemRoot%\System32\ntoskrnl.exe (相同,但现在是在 UEFI 下)

诊断启动故障的目标是“抓住”故障链中哪个环节出现了问题。从那里,我们可以决定是否应该查看启动日志文件、启动修复中的 SrtTrail.txt、内存转储、注册表,或者专注于启动代码(MBR、BCD、Bootmgr 等)。

BIOS 或固件故障:如何检测它们

诊断 BIOS 和 UEFI 中的启动问题

如果电脑甚至不显示 Windows 徽标 如果屏幕一直黑屏,没有显示任何清晰的信息,或者甚至无法正常开机,那么问题通常出在固件本身或基础硬件上。

有几个非常简单的检查可以确定系统是否已通过 BIOS 阶段。 或者它卡在那里了:

  1. 断开所有外围设备 (例如 USB 设备、外置硬盘、打印机等)。有时固件会尝试从可移动设备启动,但会卡住。
  2. 观察硬盘活动指示灯如果在启动过程中指示灯完全不闪烁,则该过程可能尚未到达读取引导扇区的阶段。
  3. 尝试按下数字锁定键。如果键盘指示灯没有变化,通常表示系统在固件或主板级别完全冻结。

当系统在早期阶段出现冻结时,通常是由于硬件故障造成的。 (内存、主板、电源、故障硬盘……)而启动文件问题则不太常见,因此在这些情况下,分析…… Ntbtlog.txt 类似的东西甚至都不会生成。

启动管理器和加载程序(MBR、BCD、Bootmgr)中的错误

机器开机后,会先出现制造商的标志,然后屏幕会变成黑色,并带有一个闪烁的光标。 如果您收到“操作系统丢失”、“Bootmgr 丢失”或与 BCD 相关的错误等消息,则问题已经出在启动管理器(启动管理器/启动加载程序)阶段。

  如何分步使用 Windows 11 疑难解答程序

这个阶段的一些典型信息可以很清楚地表明情况如何。:

  • Boot Configuration Data (BCD) missing or corrupted
  • Boot file or MBR corrupted
  • Operating system missing
  • Boot sector missing or corrupted
  • Bootmgr missing or corrupted
  • Unable to boot due to system hive missing or corrupted

此时,最有效的办法是从外部 Windows 安装介质启动。 (使用 Microsoft 工具创建的 USB/DVD 或相同或更高版本的 ISO)并使用 Shift+F10 组合键或通过高级恢复选项打开命令提示符。

使用启动修复工具

Windows启动修复实用程序是您应该首先尝试的选项。因为它自动执行了许多检查:检查引导文件的完整性、尝试修复 BCD、修复损坏的引导扇区,并生成自己的日志来记录它所做的一切。

用户流程非常简单。 当您使用与已安装的 Windows 版本相同的安装介质启动时:

  1. 从 Windows 安装 U 盘/DVD 启动计算机,然后在初始窗口中单击 下一步 > 维修设备.
  2. 在选择屏幕上,输入 疑难排解.
  3. 访问 高级选项 > 启动修复 然后让工具分析系统。
  4. 完成后,使用向导程序本身关闭系统,然后尝试正常启动。

该工具执行的所有操作都会记录在文件中。 SrtTrail.txt,位于 %windir%\System32\LogFiles\Srt\Srttrail.txt虽然它不是那种风格的启动日志 Ntbtlog.txt是的,了解它检测到了什么以及它尝试采取了哪些措施是有用的。

使用 BOOTREC 修复 MBR 和引导扇区。

如果启动修复无法解决问题,下一步通常是使用该工具。 BOOTREC (看到 BOOTREC 指南) 在恢复环境的命令提示符下,此实用程序允许您重写 MBR、重建引导扇区并重新生成 BCD 数据库。

用于解决典型 MBR 和引导扇区问题的基本命令 分别是:

  • 重写MBR (如果其他系统或第三方工具覆盖了它,则非常有用):
    bootrec /fixmbr
  • 修复系统分区的引导扇区:
    bootrec /fixboot

在某些情况下(尤其是在采用 FAT32 文件系统进行 EFI 分区的 UEFI 系统中) 运行程序时可能会出现令人头疼的“访问被拒绝”消息。 /fixboot在这种情况下,您需要检查系统分区是否已正确分配驱动器号,有时还需要将其标记为活动分区,或者通过复制启动文件来手动修复启动文件。 bootmgr 和内容 \EFI\Microsoft\Boot.

更正 BCD 仓库错误

当 BCD 损坏或指向不存在的设施时您会看到关于“启动配置数据”的更具体错误。这里,BOOTREC 和 BCDEDIT 协同工作(参见)。 使用 BCDEDIT 进行诊断).

从头开始再生 BCD 的典型步骤 这是:

  1. 扫描是否存在可检测到的 Windows 安装:
    bootrec /scanos
  2. 如果扫描后仍然无法启动,请备份 BCD 并重建它:
    bcdedit /export C:\bcdbackup
    attrib C:\boot\bcd -r -s -h
    ren C:\boot\bcd bcd.old
    bootrec /rebuildbcd
  3. 当被问及是否要将找到的安装添加到启动列表中时,回答“是”。

在某些情况下,会出现一条错误消息,提示“找不到请求的系统设备”。 尝试添加安装时,您需要在此处进行检查。 diskpart 系统分区已正确标记,已分配盘符,且未损坏。

替换 Bootmgr 文件

如果多次尝试后错误直接指向 bootmgr 受损您可以选择重命名故障副本,并从系统保留分区或安装介质中放置一个新副本。

总体思路是保留旧的。 bootmgr 安全且复制一个可用的版本 到系统所在的分区:

  1. 找到系统保留分区(通常在 FAT32 或 NTFS 格式中没有盘符,在现代 Windows 系统中大约 100 MB),并为其分配一个盘符。 diskpart 如有必要。
  2. 在该分区中,使用以下命令列出隐藏文件和系统文件:
    attrib -r -s -h
  3. 在系统驱动器上执行相同的操作(例如, C:)查看 bootmgr 现有的。
  4. 更改名称 bootmgr 例如,损坏:
    ren C:\bootmgr bootmgr.old
  5. 复制 bootmgr 从系统保留分区到 Windows 驱动器根目录的“健康”分区。
  6. 重启后检查是否能启动。

恢复系统注册表子树

当错误表明系统 hive 无法加载时 如果出现“系统注册表单元丢失或损坏”的错误信息,则问题从纯粹的启动问题转变为注册表问题。在这种情况下,通常需要从有效的备份中恢复注册表子树(您可以查看相关技术)。 使用 RegScanner 改进注册表).

  如何在 Windows 11 中更改用户个人资料图片

从 WinRE 恢复环境或 ERD 修复磁盘进行修复 您可以复制以下内容 C:\Windows\System32\config\RegBack a C:\Windows\System32\config覆盖损坏的文件(SYSTEM、SOFTWARE 等)。如果仍然无法启动,则需要恢复完整的系统备份,然后仅恢复必要的注册表单元。

内核阶段:徽标显示后出现蓝屏、循环和崩溃。

Windows启动期间出现内核错误和蓝屏

如果您已经看到 Windows 徽标,甚至是旋转的“齿轮”图标,请告诉我。但如果突然出现蓝屏、卡死或黑屏,问题很可能出在内核阶段或该阶段加载的驱动程序中。

该阶段的一些典型失败症状是众所周知的。:

  • 启动画面结束后立即停止代码(例如, 0x00000C2, 0x0000007B等)。
  • 的错误 INACCESSIBLE_BOOT_DEVICE停止标识符为 0x7B,这意味着访问启动磁盘时出现问题。
  • 旋转的圆点轮一直停留在“系统繁忙”状态。
  • Windows徽标出现后屏幕变黑,没有任何提示信息。

在这种情况下,恢复方案是基于有限的方式逐步实施的。 然后使用事件查看器、启动日志、内存转储和注册表等工具进行诊断。

尝试安全模式和最后一次正确配置

安全模式之所以成为经典,是因为它只加载最基本的功能。 这样一来,Windows 就可以启动,但会忽略掉可能导致问题的大部分第三方驱动程序和服务。

从高级启动选项 您可以尝试:

  • 安全模式
  • 带网络的安全模式
  • 上次成功配置 (如果您的版本支持此功能)

如果球队能够以任何一种方式取得进展首先建议的做法之一是打开…… 事件查看器 并查看症状出现前后一段时间的系统和应用程序日志,复制相关事件以便冷静分析。

从头开始,找出冲突的服务和司机。

当问题指向第三方服务或控制器时 (例如杀毒软件、备份软件、特殊存储驱动程序等),使用该工具执行“干净启动”非常有用。 msconfig.

在系统设置中,您可以选择“选择性启动”。 逐步禁用非关键服务,尤其是那些非微软提供的服务,直到找到导致启动失败的服务。找到后,您可以永久禁用它,恢复“正常启动”。

如果问题出在驱动程序签名上(尤其是在具有安全启动或签名要求的 x64 系统中)另一种方法是从“禁用强制使用已签名驱动程序”选项开始,并按照微软针对此类问题的特定文章中的指导方针,分析哪个驱动程序需要签名或导致冲突。

INACCESSIBLE_BOOT_DEVICE 错误 (STOP 0x7B)

错误 INACCESSIBLE_BOOT_DEVICE 它是最令人恐惧的之一 因为这意味着 Windows 无法访问它应该从中启动的驱动器:存储驱动程序不足、第三方过滤器、BIOS 中 SATA/RAID 控制器模式的更改等。

处理此错误的更高级方法涉及在注册表中过滤第三方驱动程序。 来自恢复环境:

  1. 使用与 Windows 版本相同或更高版本的 ISO 镜像启动进入 WinRE。
  2. 打开注册表编辑器,加载系统注册表单元,并为其指定一个临时名称,例如: 测试.
  3. 转到关键:
    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class
  4. 查找条目 的UpperFilters y LOWERFILTERS 指的是非微软提供的驱动程序。
  5. 对于每个可疑驾驶员,清除相应筛选值的内容。
  6. 在蜂巢中寻找其他类似情况,小心地进行改造,完成后卸下蜂巢。
  7. 以正常模式重启系统,并检查 0x7B 错误是否消失。

如果问题是在安装 Windows 更新后立即出现的可能需要删除待处理的软件包或撤销更新操作。 DISM更改注册表中的值(例如,服务) TrustedInstaller甚至重命名文件,例如 pending.xml en WinSxS 解除进程阻塞。

在 Windows 中启用启动日志记录

至此,本文的主角——档案库——就派上了用场。 Ntbtlog.txt该文件是经典的 Windows 启动日志;它记录了启动期间加载(或失败)的驱动程序和组件,例如,它可以帮助您检测是哪个特定的驱动程序阻止了系统启动。

默认情况下未启用启动日志。但激活它非常简单,主要有两种方式:通过 boot.ini 在较旧的系统中或使用 bcdedit 在 Windows 10 及更高版本等现代系统中,将其与以下技术结合使用非常有用: 使用 BootTrace 进行分析.

在基于 boot.ini 的系统(Windows XP 及类似系统)上启用 BootLog

在较旧的计算机上,启动配置文件是 boot.ini它位于 Windows 安装所在驱动器的根目录(通常位于 )。 C:)并被标记为隐藏的系统文件。

  如何在 Windows 10 和 Windows 11 中启用 Telnet

要编辑它,必须先显示受保护的系统文件。 从文件夹选项中查找 boot.ini 然后用记事本打开它。你会看到类似这样的一行(尽管参数不同):

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=»Microsoft Windows XP Professional» /noexecute=optin /fastdetect

要启用启动日志记录,只需添加修饰符即可。 /BOOTLOG 在那行的末尾结果类似于:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=»Microsoft Windows XP Professional» /noexecute=optin /fastdetect /BOOTLOG

文件保存后,系统将在每次启动时开始生成引导记录。此外,在紧急情况下,可以通过高级启动菜单逐个启用日志记录:在 Windows 启动前按 F8 键,然后选择“启用启动日志记录”选项。

生成的文件始终称为 Ntbtlog.txt 它保存在 Windows 文件夹中,通常在 C:\Windows准备用记事本打开,检查哪些驱动程序已正确加载,哪些未正确加载。

在 Windows 10 及更高版本中使用 BCDEDIT 启用和禁用启动日志

在采用 BCD 的现代系统(Windows Vista 及更高版本,包括 Windows 10)中启动配置不再由……管理 boot.ini但是有了启动配置数据存储和该工具 bcdedit.

要在特定系统上启用启动日志记录 您需要知道 BCD 中该加载器的标识符 (ID)。这可以通过在具有管理员权限的命令提示符中运行以下命令来获取:

bcdedit

在“Windows 启动加载程序”块中,您会看到一个名为“标识符”的行。 这可能类似于 {current} 或者使用不同的 GUID。使用该 ID,您可以像这样激活 BootLog:

bcdedit /set {ID} bootlog Yes

要停用它,只需将值更改为“否”即可。:

bcdedit /set {ID} bootlog No

下次重启后,如果启用了日志记录,Windows 将生成该文件。 Ntbtlog.txt 沿指定路线 它包含了启动过程中涉及的控制器和模块的所有必要信息,这对于诊断各种突发故障非常有帮助。

解读 Ntbtlog.txt 和其他启动日志

虽然乍看之下 Ntbtlog.txt 它看起来像是一个简单的行列表。关键在于理解我们要寻找的模式。在这个文件中,你会看到一些条目,它们指示控制器是否已成功加载或已跳过。

诀窍在于找到在崩溃或重启发生之前出现故障的驱动程序。……或者那些明显不属于微软且可能导致冲突的组件(例如杀毒软件驱动程序、磁盘加密、备份解决方案等)。将这些信息与事件查看器事件以及(如果可用)内存转储结合起来,可以大大缩小问题范围。

在许多情况下,内存转储会明确指向特定的驱动程序文件。 (例如, \Windows\System32\drivers\stcvsm.sys (缺失或损坏)。此类情况的一般建议如下:

  • 查看该控制器提供的功能以及它对于启动是否至关重要。
  • 如果是非必要的第三方驱动程序,请通过 WinRE 加载注册表中的系统配置单元来禁用它。
  • 运行系统文件检查器(sfc)如果怀疑系统文件损坏,则在离线模式下运行。
  • 如果怀疑存在大范围的注册表损坏或最近安装了多个驱动程序/服务,请重命名旧的注册表单元(添加以下内容): .old 到名字 C:\Windows\System32\config并恢复备份 RegBack然后尝试正常启动。

有时,尤其是在 Windows 重大更新之后,使用以下方法修复时会出现问题: DISM 它来自原始图像版本如果用于恢复的 ISO 文件与已安装的版本不完全匹配, DISM 它返回错误 0x800f081f(“找不到源文件”)。在这种情况下,建议检查以下方面: dism /get-wiminfo 图片的确切版本(install.wim o install.esd)并找到一个与要修复的系统版本实际对应的 ISO 文件。

简而言之,启动寄存器就像 Ntbtlog.txt启动修复 SrtTrail、内存转储和日志 DISM y SFC 它们构成了一个信息“生态系统”。 此工具可让您重现每次启动过程中发生的情况:哪些程序被加载,哪些程序被跳过,哪些文件损坏,以及哪些更改(驱动程序、更新、杀毒软件或各种实用程序)导致启动过程失败。通过将这些工具与 MBR、BCD、Bootmgr、RegBack 和干净启动修复技术相结合,恢复无法启动的 Windows 系统(无需完全重装系统)的成功率远比最初想象的要高。

Windows 11 中的启动跟踪
相关文章:
Windows 11 启动跟踪:分析启动过程的完整指南