80后的细娃儿

使用chkntfs控制windows开机的磁盘扫描

Chkntfs 是一种实用工具,系统管理员可使用它来将卷排除在 autochk 程序执行的检查范围之外。该实用工具在命令提示符下运行,并具有以下命令行选项:

chkntfs drive: […]chkntfs /dchkntfs /x drive: […]chkntfs /c drive: […]drive:指定驱动器号。/D 将计算机还原为默认状态,启动时检查所有驱动器并对有问题的驱动器执行chkdsk 命令。这将取消 /X 选项的效果。/X 排除默认启动时检查的驱动器。上次执行此命令排除的驱动器此时无效。/C 如果已经设置了非正常位,则安排在下一次重新启动时运行 chkdsk。 如果没有指定任何开关,chkntfs 将显示每台驱动器的非正常位状态。

示例:

chkntfs /x c: 此命令禁止 chkdsk 在驱动器 C: 上运行

chkntfs /x d:e:此命令禁止 chkdsk 在驱动器 D: 和 E: 上运行

chkntfs /x 命令不是累积性的,该命令会覆盖以前建立的任何驱动器排除项。在上面的示例中,chkntfs 命令只禁止 chkdsk 在驱动器 D 和 E 上进行检查,不检查驱动器 C 是否存在非正常位。

Chkntfs 实用工具是通过修改系统注册表中的 BootExcecute 值来工作的。BootExecute 值可以在下面的注册表项中找到:

HKEY_LOCAL_MACHINESYSTEMCURRENTCONTROLSETCONTROLSession Manager

默认值为:

BootExecute:REG_MULTI_SZ:autocheck autochk *

Chkntfs /x 在星号前添加了 /k 参数。/k 参数将禁止检查卷上是否存在非正常位。

例如,命令

chkntfs /x D:

将此注册表项修改为自动检查 autochk /k:d *

通过在驱动器上设置非正常位,Chkdsk /f 安排在下一次重新启动时自行运行。Chkdsk /x 禁止检查此非正常位。Chkdsk /f 永远不能在那些被排除在 chkntfs 执行的非正常位检查的范围之外的卷上运行。

为了在 chkntfs 实用工具已经排除的驱动器上运行 chkdsk /f,必须运行 chkntfs /d 选项以将系统返回到正常状态,或者编辑注册表中的 BootExecute 值并从 /k 参数中删除适用的驱动器号。

警告:注册表编辑器使用不当可能导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以解决因注册表编辑器使用不当而导致的问题。使用注册表编辑器需要您自担风险。

Chkdsk /f /r 可让 chkdsk 在物理磁盘上对卷进行文件系统错误和坏扇区的检查。通过向 BootExecute 值中添加一项,Chkdsk /f /r 可安排在下一次系统重新启动时自行运行。例如,

chkdsk c:/f /r

将下面的项添加到 BootExecute 值:

autocheck autochk /r ??C: 因为此项实际上位于注册表中,所以 chkdsk /f /r 不受任何 chkntfs 命令的影响。禁用 chkdsk /f /r 的唯一方法是从引用这个命令的 BootExecute 值中删除该命令行。

Chkntfs.exe 实用工具将所有驱动器视为节点的本地驱动器。这包括在共享驱动器阵列中的 Microsoft Cluster Server (MSCS) 物理磁盘资源。使用 Chkntfs.exe 来排除群集中的共享驱动器时,必须在每个节点上运行排除命令。必须这样做才能确保每个节点的注册表都拥有正确的项。您只能运行节点所拥有的共享驱动器的命令。如果该节点不具有物理磁盘资源,您将收到一条错误信息。

点赞