修复磁盘dos命令
修复磁盘错误
只有指定 /f 命令行选项,chkdsk 命令才修复磁盘错误。Chkdsk必须可以锁定驱动器以纠正错误。由于修复通常会更改磁盘的文件分配表,有时还会丢失数据,所以 chkdsk会首先发送如下所示的确认消息:
10 lost allocation units found in 3chains.
Convert lost chains to files?
如果按 Y,Windows 会在根目录中将所有丢失链保存在一个名为Filennnn.chk 的文件中。chkdsk 结束后,可以查看这些文件是否包含了所需的数据。如果按 N,Windows会修复磁盘,但对于丢失的分配单元,它不保存其内容。
如果不使用 /f 命令行选项,则在有文件需要修复时,chkdsk会发送消息,但它不修复任何错误。
如果在大磁盘(例如,70 GB)或有大量文件(数百万)的磁盘上使用chkdsk /f,这可能要花很长时间(比如说,数天)才能完成。因为 chkdsk直到工作完成它才会交出控制权,所以计算机在这段时间内将不可用。
检查 FAT 磁盘
Windows 以下列格式显示 FAT 磁盘的 chkdsk状态报告:
检查 NTFS 磁盘
Windows 以下列格式显示 NTFS 磁盘的 chkdsk状态报告:
存在打开文件的情况下使用 chkdsk
如果该驱动器上有打开的文件,则指定 /f 命令行选项后,chkdsk会发送错误消息。如果未指定 /f 命令行选项并且存在打开的文件,则 chkdsk会报告磁盘上丢失的分配单元。如果打开的文件没有记录在文件分配表时,可能会发生这种情况。如果 chkdsk报告大量分配单元丢失,可以考虑修复该磁盘。
查找物理磁盘错误
使用 /r 命令行选项可查找文件系统中的物理磁盘错误。有关使用recover 修复物理性损坏文件的信息,请参阅“”。
报告磁盘坏扇区
在磁盘第一次准备运行时,chkdsk报告的坏扇区标记为损坏。它们不会造成危险。
了解退出码
下表列出了 chkdsk 完成任务后报告的退出码。
退出码 说明
0 没有发现错误。
1 错误已找到并修复。
2 已执行清理磁盘(例如碎片收集),或者因为没有指定 /f而未执行清理磁盘。
3 由于未指定 /f选项,无法检查磁盘,错误不能修复或错误未修复。
故障恢复控制台提供了带有不同参数的 chkdsk 命令。
范例
如果要检查驱动器 D 中的磁盘,并且希望 Windows修复错误,请键入:
chkdsk d:/f
如果遇到错误,chkdsk 会暂停并显示消息。Chkdsk完成任务时会显示列有磁盘状态的报告。除非 chkdsk 已完成任务,否则无法打开指定驱动器上的任何文件。
在 FAT 磁盘上,要检查当前目录中所有文件的不相邻块,请键入:
chkdsk *.*
Chkdsk 显示状态报告,然后列出符合具有不相邻块条件的文件。
XOX
使用CHKDSK命令的注意事项
(1)系统存在打开的文件时
当有文件打开时请不要使用CHKDSK。因为CHKDSK是假定磁盘文件处于关闭状态而设计的。当有文件打开时,相应的MS-DOS将会修改文件分配表和目录结构。这种改变并不一定立即进行,文件分配表和目录结构的改变发生在不同时刻。因此如果磁盘上文件打开时运行CHKDSK,就会把目录结构和文件分配表的不一致解释为出错,从而导致数据丢失或文件系统的破坏。因此,在运行其它程序,如MicrosoftWindows时,千万不要运行CHKDSK。
(2)CHKDSK不能用于分配的驱动器和网络。
CHKDSK不能用于由SUBST命令形成的驱动器工作,也不能用于网络驱动器上的磁盘检查。
(3)物理磁盘错误
CHKDSK命令只能找到文件系统中的逻辑错误,而不能查找物理磁盘错误。要查找物理磁盘错误,请使用SCANDISK程序。
(4)坏磁盘扇区
CHKDSK报告中将坏扇区标记上“bad”,SCANDISK和其它物理磁盘错误修正程序也将坏扇区标记为“bad”,因此坏扇区不会造成危害。
(5)交叉链接的文件
如果有两个文件或目录共用同一磁盘空间的记录,CHKDSK会报告有交叉链接文件。如果CHKDSK发现有交叉链接文件存在,会显示类似如下信息:
is cross linked on allocationunit
CHKDSK不会修补交叉链接文件,即使指定了/F项。要修复交叉链接文件,需要运行SCANDISK程序,或者进行手工修复,然后复制到指定的文件中并删除原文件。[