为什么我们不能在 C 盘上使用 chkdsk 命令?

为什么我们不能在 C 盘上使用 chkdsk 命令?

当我们在 Windows 中对 C 盘运行 chkdsk 命令时,它不会运行,但会在我们重新启动系统时提示您稍后安排该命令。为什么?

答案1

要运行将要扫描和移动坏扇区或纠正文件系统错误的低级 chkdsk 例程,必须卸载并锁定磁盘,以防止在 chkdsk 扫描和修复期间因不需要的文件系统访问而造成损坏。

在大多数 Windows 系统中,C 盘也是系统盘。虚拟内存分页文件等文件处于打开状态并处于连续访问状态。在这种情况下,chkdsk 无法进行低级更改并保持驱动器的完整性。因此,为了确保所有文件都已保存、关闭且可扫描,chkdsk 会在启动时询问您是否要扫描。

在下次启动时,Windows 会使用适当的磁盘子系统驱动程序将足够的自身内容加载到内存中以访问磁盘,并在安装磁盘之前,继续通知操作系统写入操作已暂停,然后继续扫描磁盘文件结构的完整性,如果需要,则扫描不可读的扇区。

一旦完成检查文件系统、纠正错误和写出恢复的文件片段以检查文件后,系统就会挂载卷并继续启动。

另一个磁盘(D?)不是系统磁盘,并且没有运行任何不会关闭文件的进程,因此当 chkdsk 要求卸载和锁定时,磁盘会遵守,然后 chkdsk 启动并运行至完成。

答案2

我以前也遇到过这个问题。这是因为另一个进程正在使用磁盘,chkdsk需要使用整个磁盘。两个程序不能同时访问相同的数据,否则数据已损坏。

为了chkdsk正确运行,其他程序都不能访问磁盘,所以基本上它只能在计算机关闭时(它提供的选项)或启动时立即运行。

相关内容