Chkdsk
基于所用的文件系统,创建和显示磁盘的状态报告。Chkdsk还会列出并纠正磁盘上的错误。如果不带任何参数,chkdsk将显示当前驱动器中的磁盘状态。
语法
chkdsk[volume:][[Path]FileName][/f][/v][/r][/x][/i][/c][/l[:size]]
参数
volume:
指定驱动器号(冒号分隔)、装入点或卷名。
[Path}FileName]
指定需要chkdsk检查碎片整理的文件或文件集的位置和名称。使用通配符(*和?)可以指定多个文件。
/f
修复磁盘上的错误。必须锁定磁盘。如果chkdsk无法锁定驱动器,则会显示一条消息,询问您是否希望在下次重新启动计算机时检查该驱动器。
/v
当检查磁盘时,显示所有目录中每个文件的名称。
/r
找到坏扇区并恢复可读取的信息。必须锁定磁盘。
/x
仅在NTFS上使用。如果必要,首先强制卸载卷。该驱动器的所有打开句柄都无效。/x还包含了/f的功能。
/i
仅随NTFS使用。对索引项执行充分检查,降低运行chkdsk的所用时间量。
/c
仅随NTFS使用。跳过文件夹结构中的周期检查,减少运行chkdsk所需的时间量。
/l[:size]
仅随NTFS使用。将日志文件的大小更改为由用户输入的大小。如果省略该参数,则/l会显示当前日志文件的大小。
/?
在命令提示符显示帮助。
注释
运行chkdsk
要在固定磁盘上运行chkdsk命令,您必须是该Administrators组的成员。
重新启动时检查锁定的驱动器
如果希望chkdsk修复磁盘错误,则此前不能打开该驱动器上的文件。如果有文件打开,会显示下述错误消息:
ChkdskcannotrunbecausethevolumeisinusebyanotherprocessWouldyouliketoschedulethisvolumetobecheckedthenexttimethesystemrestarts?(Y/N)
如果选择下次重新启动计算机时检查该驱动器,则重新启动计算机后chkdsk会自动检查该驱动器并修复错误。如果该驱动器分区为启动分区,则chkdsk在检查完该驱动器后会自动重新启动计算机。
报告磁盘错误
chkdsk命令会检查磁盘空间和文件分配表(FAT)以及NTFS文件系统的使用情况。Chkdsk在状态报告中提供特定于每个文件系统的信息。状态报告显示文件系统中找到的错误。在活动分区上运行chkdsk时,如果未含/f命令行选项,则它可能会因为无法锁定该驱动器而报告虚假信息。应该不定期使用chkdsk检查每个磁盘上的错误。
修复磁盘错误
只有指定/f命令行选项,chkdsk命令才修复磁盘错误。Chkdsk必须可以锁定驱动器以纠正错误。由于修复通常会更改磁盘的文件分配表,有时还会丢失数据,所以chkdsk会首先发送如下所示的确认消息:
10lostallocationunitsfoundin3chains.
Convertlostchainstofiles?
如果按Y,Windows会在根目录中将所有丢失链保存在一个名为Filennnn.chk的文件中。chkdsk结束后,可以查看这些文件是否包含了所需的数据。如果按N,Windows会修复磁盘,但对于丢失的分配单元,它不保存其内容。
如果不使用/f命令行选项,则在有文件需要修复时,chkdsk会发送消息,但它不修复任何错误。
如果在大磁盘(例如,70GB)或有大量文件(数百万)的磁盘上使用chkdsk/f,这可能要花很长时间(比如说,数天)才能完成。因为chkdsk直到工作完成它才会交出控制权,所以计算机在这段时间内将不可用。
检查FAT磁盘
Windows以下列格式显示FAT磁盘的chkdsk状态报告:
VolumeSerialNumberisB1AF-AFBF
72214528bytestotaldiskspace
73728bytesin3hiddenfiles
30720bytesin12directories
11493376bytesin386userfiles
61440bytesinbadsectors
60555264bytesavailableondisk
2048bytesineachallocationunit
35261totalallocationunitsondisk
29568availableallocationunitsondisk
检查NTFS磁盘
Windows以下列格式显示NTFS磁盘的chkdsk状态报告:
ThetypeofthefilesystemisNTFS.
CHKDSKisverifyingfiles...
Fileverificationcompleted.
CHKDSKisverifyingindexes...
Indexverificationcompleted.
CHKDSKisverifyingsecuritydescriptors...
Securitydescriptorverificationcompleted.
12372kilobytestotaldiskspace.
3kilobytesin1userfiles.
2kilobytesin1indexes.
4217kilobytesinusebythesystem.
8150kilobytesavailableondisk.
512bytesineachallocationunit.
24745totalallocationunitsondisk.
16301allocationunitsavailableondisk.
存在打开文件的情况下使用chkdsk
如果该驱动器上有打开的文件,则指定/f命令行选项后,chkdsk会发送错误消息。如果未指定/f命令行选项并且存在打开的文件,则chkdsk会报告磁盘上丢失的分配单元。如果打开的文件没有记录在文件分配表时,可能会发生这种情况。如果chkdsk报告大量分配单元丢失,可以考虑修复该磁盘。
查找物理磁盘错误
使用/r命令行选项可查找文件系统中的物理磁盘错误。有关使用recover修复物理性损坏文件的信息,请参阅“”。
报告磁盘坏扇区
在磁盘第一次准备运行时,chkdsk报告的坏扇区标记为损坏。它们不会造成危险。
了解退出码
下表列出了chkdsk完成任务后报告的退出码。
退出码说明
0没有发现错误。
1错误已找到并修复。
2已执行清理磁盘(例如碎片收集),或者因为没有指定/f而未执行清理磁盘。
3由于未指定/f选项,无法检查磁盘,错误不能修复或错误未修复。
故障恢复控制台提供了带有不同参数的chkdsk命令。
范例
如果要检查驱动器D中的磁盘,并且希望Windows修复错误,请键入:
chkdskd:/f
如果遇到错误,chkdsk会暂停并显示消息。Chkdsk完成任务时会显示列有磁盘状态的报告。除非chkdsk已完成任务,否则无法打开指定驱动器上的任何文件。
在FAT磁盘上,要检查当前目录中所有文件的不相邻块,请键入:
chkdsk*.*
Chkdsk显示状态报告,然后列出符合具有不相邻块条件的文件。
XOX