Disk problems can cause unpredictable
behavior in Windows. First, disk problems can lead to corrupted files
because important system files and drivers are stored on your hard
disk,. Second, disk problems can lead to corruption in the page file or
temporary files. Third, low disk space can lead to failed attempts to
allocate disk space for temporary files. Any of these types of problem
can cause unpredictable behavior. As a result, one step in
troubleshooting hardware problems should be to check for disk problems
and free up available disk space. Additionally, if you have a hard disk
with non-volatile caching, you can disable that caching to determine
whether the cache is causing problems.
The
following sections provide information about troubleshooting
disk-related problems.
1. How to Prepare for Disk Failures
You
can take several steps to prepare yourself—and your computers—for
troubleshooting disk problems before the problems occur. First,
familiarize yourself with recovery and troubleshooting tools. Use of
disk redundancy lessens the impact of hardware failures. Backups ensure
minimized data loss when failures occur. Protect yourself from
malicious attacks using antivirus software. Finally, perform regular
maintenance on your storage devices.
You
should familiarize yourself with the System Recovery Tools, and have a
Windows Vista DVD available to start the tools if the hard disks are
not available.
Run
“Chkdsk -f –r” regularly to fix file system problems that may appear
because of faulty hardware, power failures, or software errors.
Schedule downtime to reboot the computer and allow Autochk to resolve
problems on boot and system volumes. Regularly review the Chkdsk output
and the event log to identify problems that Chkdsk cannot fix.
For
desktop computers that store critical, constantly updated data, use
hardware disk redundancy (known as RAID) to allow computers to continue
to function if a hard disk fails. Keep replacement disks on hand.
At
a minimum, back up critical files nightly. Redundancy does not
eliminate the need for backups. Even redundant file systems can fail,
and disk redundancy cannot protect against files that are corrupted by
an application. You must restore corrupted files from an archival
backup created before the corruption occurred.
Viruses
are a significant source of disk and file system problems. Follow these
guidelines to avoid infecting computers with viruses:
- Install a virus-detection program. Configure the virus-detection program to automatically retrieve updated virus signatures.
- Use Windows Update to ensure that operating system files stay up-to-date.
- Never run untrusted scripts or applications.
While
fragmentation will not cause a hard disk to fail, it will cause
performance problems. To avoid performance problems, schedule the
Defrag command-line tool to run regularly during off-peak hours. Store
the output of the Defrag tool to a text file, and review that text file
regularly to ensure that defragmentation is performing as expected. To
further minimize problems caused by fragmentation, ensure that all
volumes have at least 15 percent free space available.
2. How to Use Chkdsk
Chkdsk
(Chkdsk.exe) is a command-line tool that checks disk volumes for
problems and attempts to repair any that it finds. For example, Chkdsk
can repair problems related to bad sectors, lost clusters, cross-linked
files, and directory errors. Disk errors are a common source of
difficult-to-track problems, and Chkdsk should be one of the first
tools you use when troubleshooting problems that do not appear to be
the result of a recent system change. You must be logged on as an
administrator or a member of the Administrators group to use Chkdsk.
Before running Chkdsk, be aware of the following:
Chkdsk
requires exclusive access to a volume while it is running. Chkdsk might
display a prompt asking if you want to check the disk the next time you
restart your computer.
Chkdsk might take
a long time to run, depending on the number of files and folders, the
size of the volume, disk performance, and available system resources
(such as processor and memory).
Chkdsk might not accurately report information in read-only mode.
Chkdsk Examples
To correct disk errors from a command line, type:
chkdsk DriveLetter: /f /r
For example, to check drive C for errors, type:
If you need to run Chkdsk on a large D volume and you want Chkdsk to complete as quickly as possible, type:
Chkdsk Syntax
The command-line syntax for Chkdsk is:
chkdsk [volume[[path] filename]] [/f] [/v] [/r] [/x] [/i] [/c] [/b] [/l[:size]]
Table 1 lists all Chkdsk command-line parameters.
Table 1. Chkdsk Parameters
Parameter | Description |
---|
volume | Specifies
the volume that you want Chkdsk to check. You can specify the volume by
using any of the formats in the following examples: To run Chkdsk on the C volume, specify:
c:
To run Chkdsk on a mounted volume called data that is mounted on the C volume, specify:
c:\data
To run Chkdsk on a volume, you can specify the symbolic link name for a volume, such as:
\\?\Volume{109d05a2-6914-11d7-a037-806e6f6e6963}\
You can determine a symbolic link name for a volume by using the mountvol command.
|
path | FAT/FAT32 only. Specifies the location of a file or set of files within the folder structure of the volume. |
filename | FAT/FAT32 only. Specifies the file or set of files to check for <a ID="wPopUp" HREF="HELP=glossary.hlp TOPIC=gls_fragmentation"> fragmentation </a>. Wildcard characters (* and ?) are allowed. |
/f | Fixes
errors on the disk. The volume must be locked. If Chkdsk cannot lock
the volume, Chkdsk offers to check it the next time the computer
restarts. |
/v | On
FAT/FAT32: Displays the full path and name of every file on the disk.
On NTFS: Displays additional information or cleanup messages, if any. |
/r | Locates <a ID="wPopUp" HREF="HELP=glossary.hlp TOPIC=glos_glo_cigj"> bad sectors </a> and recovers readable information (implies /f).
If Chkdsk cannot lock the volume, it offers to check it the next time
the computer starts. Because NTFS also identifies and remaps bad
sectors during the course of normal operations, it is usually not
necessary to use the /r parameter unless you suspect that a disk has bad sectors.
|
/x | Forces the volume to dismount first, if necessary. All opened handles to the volume are then invalid (implies /f). This parameter does not work on the boot volume. You must restart the computer to dismount the boot volume. |
/i | NTFS only. Performs a less detailed check of index entries, reducing the amount of time needed to run Chkdsk. |
/c | NTFS only. Skips the checking of cycles within the folder structure, reducing the amount of time needed to run Chkdsk. |
/l:size | NTFS
only. Changes the size of the log file to the specified number of
kilobytes. Displays the current size if you do not enter a new size. If
the system loses power, stops responding, or is restarted unexpectedly,
NTFS runs a recovery procedure when Windows Vista restarts that
accesses information stored in this log file. The size of the log file
depends on the size of the volume. In most conditions, you do not need
to change the size of the log file. However, if the number of changes
to the volume is so great that NTFS fills the log before all metadata
is written to disk, then NTFS must force the metadata to disk and free
the log space. When this condition occurs, you might notice that
Windows Vista stops responding for five or more seconds. You can
eliminate the performance impact of forcing the metadata to disk by
increasing the size of the log file. |
/b | NTFS
only. Re-evaluates bad clusters on the volume. This is typically not
necessary, but it might allow you to reclaim some lost disk space on a
hard disk with a large number of bad clusters. However, these clusters
might experience problems in the future, decreasing reliability. |
/? | Displays this list of Chkdsk parameters. |