如何在 Windows 启动时禁用所有驱动器的自动 chkdsk?

如何在 Windows 启动时禁用所有驱动器的自动 chkdsk?

我有一个包含多个分区的系统,既有 Windows 分区,也有 Linux 分区。问题是,在启动过程中,Windows 会尝试运行在每个可能的分区上进行 autochk(包括 ext4 等,它将其视为 RAW)。

我知道,可以通过修改注册表值来从 autochk 中排除磁盘/分区BootExecute,但我见过的所有解决方案都需要指定排除的分区字母。虽然这适用于 FAT 和 NTFS 分区,Linux 分区没有分配任何字母,这意味着,我无法将它们指定为 autochk 排除。

那么,问题是,如何才能完全禁用系统中所有驱动器的 autochk?或者,如果 autochk 无法完全关闭,请对没有驱动器号的分区禁用它。

更新:实际上,你可以直接将其autocheck autochk *从 BootExecute 中删除,不会出现任何问题。如果有多个 Linux 分区,它将大大加快启动时间(尤其是当操作系统位于 SSD 上时)。但是,在这种情况下,应不时进行手动检查。

答案1

遇到了同样的问题,并且能够通过运行 Siva Charan 建议的命令来解决它,但不能使用驱动器号(因为不存在驱动器号并且无法分配),而必须使用启动时显示的 GUID(启动时的消息例如“扫描和修复驱动器(\\?\Volume{000012ab-0000-0000-005d-123456789012})”)。

因此,不要:

chkntfs /x c:

必须在提升的命令提示符或 Windows Powershell 中运行此命令:

chkntfs /x "\\?\Volume{000012ab-0000-0000-005d-123456789012}"

答案2

阻止 chkdsk 在启动时运行的正确方法是使用chkntfs

chkntfs /xc:

c:您要从磁盘检查中排除的驱动器在哪里。您可以使用多个驱动器作为参数,如下所示:

chkntfs /xc: d:

各个开关的解释:

C:\Documents and Settings\Administrator>chkntfs /?
显示或修改启动时的磁盘检查。

CHKNTFS 卷 [...]
CHKNTFS/D
CHKNTFS /T[:时间]
CHKNTFS /X 卷 [...]
CHKNTFS /C 卷 [...]

  volume 指定驱动器号(后跟冒号),
                 挂载点或卷名。
  /D 将机器恢复为默认行为;所有驱动器
                 在启动时检查,并对那些
                 肮脏的。
  /T:time 将 AUTOCHK 启动倒计时时间更改为
                 以秒为单位指定时间量。如果时间未
                 指定时,显示当前设置。
  /X 从默认启动时检查中排除驱动器。排除
                 驱动器不会在命令调用之间累积。
  /C 安排在启动时检查驱动器;chkdsk 将运行
                 如果驱动器很脏。

如果没有指定开关,则 CHKNTFS 将显示指定驱动器是否
脏了或者计划在下次重启时进行检查。

请参阅此处:-

为什么每次启动 Windows 7 机器时都会运行 CHKDSK?

相关内容