无论何时出现硬盘错误,或者您可能一开始并未将其与硬盘关联起来的奇怪行为,检查磁盘都可以起到救生作用。以下是如何使用Windows 10、Windows 11和其他版本的Windows附带的Chkdsk工具的说明。
磁盘检查工具,也称为chkdsk(因为这是运行它的命令)扫描整个硬盘驱动器以查找和修复问题。这不是一个非常令人兴奋的工具-运行它可能需要一些时间-但是从长远来看,它确实有助于防止更大的问题和数据丢失。Chkdsk根据其运行方式执行几个功能:
Chkdsk的基本功能是扫描磁盘卷上的文件系统和文件系统元数据的完整性,并修复找到的任何逻辑文件系统错误。这样的错误可能包括卷的master file table(MFT)中的损坏条目,与文件关联的错误的安全描述符,甚至单个文件的对齐时间戳或文件大小信息错误。
Chkdsk还可以选择扫描磁盘卷上的每个扇区,寻找损坏的扇区。损坏的扇区有两种形式:软损坏的扇区,当数据写入时可能发生,以及硬损坏的扇区,由于磁盘物理损坏而可能发生。Chkdsk通过修复软损坏的扇区和标记硬损坏的扇区来尝试解决这些问题,以便它们不会被再次使用。
这一切听起来可能很技术化,但别担心:你不需要了解它的工作原理,只要知道什么时候应该运行它就可以了。
作为例行维护的一部分,你可能每隔几个月就想要运行一次chkdsk,同时配合使用支持S.M.A.R.T.工具的驱动器。在Windows异常关闭时,你也应该考虑运行它——比如在断电或系统崩溃后。有时Windows会在启动时自动运行扫描,但大多数情况下,你必须自己手动运行。即使你只是遇到了应用程序无法加载或崩溃的奇怪问题,而你还没有找到其他方法解决,你也可以考虑检查磁盘。
例如:有一次,Outlook在加载后不久突然开始崩溃。经过大量的故障排除后,chkdsk扫描显示我的Outlook数据文件存储在损坏的扇区中。幸运的是,大多数情况下chkdsk能够恢复扇区,之后一切恢复正常。
如果chkdsk遇到问题,尤其是无法修复的硬损坏扇区,可能会导致数据无法使用。这种情况不太可能发生,但也是有可能的。因此,在运行chkdsk之前,您应始终确保有好的备份程序,并对电脑进行备份。
chkdsk工具在所有版本的Windows中运行方式基本相同。本文将以Windows 10为例进行讲解,因此如果您使用的是Windows 11,则截图可能略有不同,但chkdsk的功能相同,我们将指出任何不同的操作步骤。我们还将介绍如何在无法进入Windows的情况下从命令提示符运行该工具。
从Windows桌面运行磁盘检查工具很简单。在文件资源管理器中,右键单击要检查的驱动器,然后选择“属性”。
在属性窗口中,切换到“工具”选项卡,然后点击“检查”按钮。在Windows 7中,该按钮名为“立即检查”。
在Windows 10和Windows 11中,Windows可能会通知您未在驱动器上发现任何错误。您仍然可以通过单击“扫描驱动器”来执行手动扫描。这将首先在不尝试任何修复的情况下进行扫描,因此此时不会重新启动您的PC。如果快速磁盘扫描发现任何问题,Windows将向您显示该选项。但是,如果您想强制执行,则必须使用命令提示符运行chkdsk,本文稍后将介绍这一点。
Windows扫描驱动器后,如果没有发现错误,您可以点击“关闭”。
如果您不确定磁盘检查是否安排在下一次重新启动时进行,则可以在命令提示符下轻松检查。您需要使用管理员权限运行命令提示符。打开“开始”菜单,然后键入“cmd”。右键单击结果,然后选择“以管理员身份运行”。
注意: 只要以管理员身份启动,此方法在命令提示符、PowerShell或Windows终端中完全相同。
在提示符下,键入以下命令(如有必要,请替换驱动器字母)。
chkntfs c:
如果您已安排手动检查驱动器,则将看到相应的消息。
如果Windows已安排对驱动器进行自动检查,则将看到一条消息,通知您该卷存在错误,这表示该卷已被标记为存在潜在错误。这表示Windows将在下次启动时运行检查。如果没有安排自动扫描,则只会看到一条消息,通知您该卷没有错误。
如果磁盘检查已安排在下次启动Windows时进行,但您决定不进行此检查,则可以通过键入以下命令取消检查:
chkntfs /x c:
您不会获得任何有关扫描已取消的反馈,但实际上已取消了扫描。此命令实际上将驱动器排除在下一次启动的chkdsk命令之外。如果您重新启动后发现已安排扫描,则Windows也很友善,可为您提供约十秒钟的时间来跳过扫描(如果需要)。
如果您愿意使用命令提示符(或者您必须使用,因为Windows无法正常启动),则可以更多地控制磁盘检查过程。另外,如果您使用的是Windows 10或Windows 11,则这是强制自动修复或扫描坏扇区的唯一方法。通过按Windows+X并选择“命令提示符(管理员)”,打开具有管理员权限的命令提示符。您将使用chkdsk命令。该命令支持许多可选的开关,但我们主要关注其中两个开关:/f和/r。
注意: 如果您愿意,也可以使用PowerShell或Windows终端。这个过程是相同的。只要确保以管理员身份启动它们即可。
如果您只使用chkdsk命令,它将以只读模式扫描您的驱动器,报告错误但不尝试修复它们。因此,通常可以在不必重新启动PC的情况下运行。
如果您希望chkdsk在扫描过程中尝试修复逻辑文件系统错误,请添加/f开关。请注意,如果驱动器中有正在使用的文件(很可能会有),则会要求您安排在下一次重新启动时进行扫描。
chkdsk /f c:
如果您还希望chkdsk扫描坏扇区,则使用/r开关。当您使用/r开关时,隐含使用/f开关,这意味着chkdsk将同时扫描逻辑错误和坏扇区。但是,尽管您不必明确编写chkdsk/f/r,但同时使用/r和/f开关也不会造成任何伤害。
chkdsk /r c:
运行chkdsk/r可以为您提供最彻底的扫描,如果您的硬盘有足够的时间进行扇区检查,我们强烈建议您至少定期运行它。
当然,您可以使用其他参数与 chkdsk 一起使用。因此,为了完整性以及您的极客乐趣,这里将他们列出来了:
C:>chkdsk /? 检查磁盘并显示状态报告。
CHKDSK [volume[[path]filename]]] [/F] [/V] [/R] [/X] [/I] [/C] [/L[:size]] [/B]
值得一提的是,/I或/C开关可以跳过对卷的某些检查,从而减少运行Chkdsk所需的时间。希望Chkdsk能够修复您可能遇到的任何硬盘问题,您就可以回到以前使用计算机的正常状态了。
volume:指定驱动器号(后面跟一个冒号),载入点,或卷名。
filename:仅限于FAT/FAT32格式。指定要检查碎片情况的文件。
/F:修复磁盘上的错误。
/V:在FAT/FAT32上显示磁盘上每个文件的完整路径和名称;在NTFS上,如果存在,则显示清理消息。
/R:定位坏扇区并恢复可读取的信息(隐含/F)。
/L:仅限在NTFS中的大小,将日志文件大小更改为指定的千字节大小。如果未指定大小,则显示当前大小。
/X:如果需要的话,强制卸载卷。然后,所有打开的卷的句柄都将无效(隐含 /F)。
/I:仅适用于NTFS,对索引项进行较轻的检查。/C 仅适用于NTFS:跳过对文件夹结构中循环的检查。
/B:仅适用于NTFS,重新评估卷上的坏扇区(意味着/R)/scan 仅适用于NTFS:在卷上运行在线扫描。
/forceofflinefix:仅限NTFS,必须与“/scan”一起使用,绕过所有在线修复;发现的所有缺陷都会被排队等待离线修复(即“chkdsk /spotfix”)。
/perf:仅限NTFS,必须与“/scan”一起使用,使用更多的系统资源,尽快完成扫描。这可能会对系统上运行的其他任务产生负面的性能影响。
/spotfix:仅限NTFS,在/sdcleanup 中进行音量的点位修复,仅针对 NTFS:垃圾回收不必要的安全描述符数据(隐含 /F)。
/offlinescanandfix:运行离线扫描并修复卷。
/freeorphanedchains:仅限于FAT / FAT32 / exFAT:释放任何孤立的簇链,而不是恢复它们的内容。
/markclean:仅限FAT/FAT32/exFAT: 如果未检测到损坏,即使未指定/F,也会标记卷为干净。