chkdsk工具保护Windows 7文件系统一致性

日期: 2010-07-11 作者:Serdar Yegulalp翻译:李哲贤 来源:TechTarget中国 英文

在各种计算机系统中最脆弱——也是最关键的部分,往往就是硬盘。过去的15年间,虽然硬盘的可靠性一直在提高,硬盘事故依然会不断发生。当这种情况发生后,您的数据就如同泡泡糖一样被咀嚼和丢弃了。   为了增强硬盘系统的稳定性,针对硬盘的文件系统也在不断地改善中。

在Windows中,FAT系统让路于FAT32和现在的NTFS系统(新的文件系统)。这种新型的文件系统最初仅用于服务器环境中,而最终普及到桌面系统中使用。   虽然如此,有很多东西是一直没有变过的。其中之一就是在发生故障后用于保证文件系统一致性的工具:chkdsk。

  什么是chkdsk?   chkdsk来源于它名字发音的缩写:check ……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

在各种计算机系统中最脆弱——也是最关键的部分,往往就是硬盘。过去的15年间,虽然硬盘的可靠性一直在提高,硬盘事故依然会不断发生。当这种情况发生后,您的数据就如同泡泡糖一样被咀嚼和丢弃了。

  为了增强硬盘系统的稳定性,针对硬盘的文件系统也在不断地改善中。在Windows中,FAT系统让路于FAT32和现在的NTFS系统(新的文件系统)。这种新型的文件系统最初仅用于服务器环境中,而最终普及到桌面系统中使用。
 
  虽然如此,有很多东西是一直没有变过的。其中之一就是在发生故障后用于保证文件系统一致性的工具:chkdsk。

  什么是chkdsk?

  chkdsk来源于它名字发音的缩写:check disk。当用户在管理员权限下运行chkdsk命令的时候,它会自动对指定卷进行分析——可以针对硬盘、静态磁盘或者可移动磁盘等等执行,并识别那些可能会很容易导致文件不一致或硬件层数据损坏的潜在问题。

  chkdsk命令的最常用格式如下:

  chkdsk <volume> /f

  这里:

  • <volume>指代磁盘驱动器盘符,例如:C:
  • /f 参数的作用是告诉chkdsk命令同时进行故障修复工作。如果chkdsk命令后只带了盘符而没有/f参数,chkdsk只会简单地生成一个报告来说明磁盘系统的现有状态。

  而且请注意,如果不带/f参数运行的话,所返回的关于磁盘故障问题的原因等方面相关的信息可能会不完整。如下图1所示:

  图1:运行不带/f参数的chkdsk命令演示

chkdsk命令

  如果您运行不带/f 的chkdsk命令,可能存在检测到的问题,在其它故障被修复之前必须使驱动器处于锁定状态。而且,您需要不止一次地重复运行chkdsk来检测在首次修复工作完成后是否还需要进一步地修复。

  其它的一些用于chkdsk的常用参数说明如下:

  • /v—在详细模式下运行chkdsk。这个过程会详细地解释在运行过程所进行的每一步操作的含义
  • /x---在检查进行之前先把卷卸载。如果需要运行检查的是非系统卷,通过使用这个参数可以确保在检查过程进行中,该驱动器不会被系统中的其它程序访问。如果您没有使用这个参数而且尝试在加载的卷上运行chkdsk命令,系统将会自动提示您是否首先进行卸载操作。而如果是操作系统使用的卷(例如包含/windows 目录在内的驱动器),是无法被卸载的。相应地,系统将会提示您是否在下次重启后重新运行磁盘检查。
  • /r—该命令参数会尝试从坏道中扫描并完成信息修复。这个选项会需要花费大量的时间来运行,对于较大的磁盘最终可能会需要几个小时的时间。因此,这种模式只有在您希望从一块已经从主机离线的、被损坏的磁盘中恢复信息时才会使用。
  • /i和/c—这两个参数通过忽略文件系统中特定的索引和周期来加快NTFS卷的扫描进程,是专用于NTFS系统的。

  如果您想显示完成的参数列表,在命令行中输入chkdsk /?。

  注,chkdsk命令必须在高优先级的权限下运行。如果您尝试一下从非管理员账户运行的话,系统将会向显示终端输出如下错误提示:

  由于您没有足够的权限,该访问被禁止。您需要在更高级别的权限中调用该命令。

  chkdsk的运行

  如果有需要,chkdsk命令经常会自动地运行。例如,如果系统崩溃或者是电源中断的情况下,chkdsk会在下次系统重启后运行。这种情况是由于系统中存在一个或多个卷有“页面重写(dirty bit)”标识符。它是在NTFS卷上添加的一个标志位,表明该磁盘的一个写操作有待进行。chkdsk将会自动检查该卷以确定它是正常的。

  无论chkdsk是否会自动运行,如果发生了如下情形,您就需要运行chkdsk:

  1. 如果在系统发生BSOD蓝屏(blue screen of death)错误或者是应用程序崩溃后,应用程序的操作存在异常或是某个文件无法被正常访问。
  2. 如果磁盘在没有预警的情况下从系统中卸载(例如发生线缆脱落),而且在重新插入后无法稳定地读写。
  3. 如果磁盘看起来受到了物理损伤。无论是否还能读取,最好还是通过/r选项对它做全面的检查,以确定其中的内容是否存在问题。

  所有chkdsk操作的结果都以事件ID26214作为标记,被写入到应用程序日志中,如下图2所示。

  图2:chkdsk操作的结果都被写入应用程序的事件日志中。

chkdsk

  在本文的下半部分中,我们将介绍如何在故障恢复控制台中运行chkdsk以及chkdsk和Windows 7中的NTFS自我修复过程。

在本文的上半部分中,我们介绍了chkdsk的概念以及它是如何运行的,在本文的下半部分中,我们将继续介绍如何在故障恢复控制台中运行chkdsk以及chkdsk和Windows 7中的NTFS自我修复过程

作者

Serdar Yegulalp
Serdar Yegulalp

Serdar Yegulalp从1994年到2001年为Windows杂志写作,覆盖了广泛的技术方面。他现在是《The Windows 2000 Power Users Newsletter》一书的出版者,辛勤钻研他擅长的Windows NT, Windows 2000 and Windows XP领域,并为TechTarget写专栏。

翻译

李哲贤
李哲贤

TT虚拟化特约作者

相关推荐

  • 静观终端用户计算趋势变化

    我们应该了解VMware远程桌面会话主机以及发布的应用吗?我们应该迁移到XenApp 7吗?我们需要为Windows 10做好准备吗?

  • 部署Windows 7的四点硬件经验

    微软的Windows 7已经推出将近3年时间了,Windows 8预计在今年下半年发布。现在是时候回顾总结一下我们在企业环境中配置Windows 7过程得到的经验。

  • 借助Quest工具简化Windows 7迁移

    如果您计划进行Windows 7迁移,桌面虚拟化工具可以帮助实现。这类产品之一就是Quest软件公司的User Workspace Management business unit。

  • 使用PowerShell管理Windows桌面

    当微软在2003年首次引入Windows PowerShell时,很多IT管理员认为Windows PowerShell只是执行脚本任务以及管理Windows服务器的另一种方式,但是……