If there’s a piece of equipment that works hard in your PC, it’s your hard disk drive (HDD.) HDDs operate at anywhere between 4200 and 15000 RPM (perhaps higher) while in use. In other words, these things spin anywhere between 70 and 250 times a second—sometimes for days on end! While the information in this guide mostly applies to both HDDs and Solid State Drives (SSD), SSDs have no moving parts so some of the information will not apply.
With high speeds and enormous data transfers on a daily basis hard drive file systems, used to store and access all your data, are prone to corruption and failure. Thankfully, all versions of Windows come with a nifty, free tool called “Check Disk” (chkdsk.) In this guide, we’ll show you how to use Check Disk and explain a little about common errors to which hard drives are prone.
How Do Hard Drives Get Corrupted?
All storage media is prone to corruption; however HDDs are a little more exposed as they have moving parts. Included in these moving parts are read/write heads that, when jolted mid read/write (i.e. when you put your laptop down on a table) can crash into the hard disk platters and ruin data. Technically, a jolted head can wipe out a whole HDD if it hits the right area and I’ve seen this happen with a coworker’s laptop. Presumably, that won’t happen to you if you’re careful; however, you may have already lost/scrambled data without realizing it.
Even you’re careful with your PC (or it’s a desktop and you don’t move it while it’s powered on), there are other ways to corrupt data. Common ways in which data is corrupted include: power surges, malware, turning your PC off without a clean shut down (Windows may label your drive as a “dirty” disk), and even flipped bits resulting from non-ECC protected memory. These corruption issues affect both HDD and SSD users. Often, HDDs will take care of bad sectors with self-detection mechanisms; however, corrupted file systems are dealt with using chkdsk.
What Does chkdsk Do?
chkdsk scans your hard drive, identifies problems, and attempts to fix these problems. Specifically, chkdsk:
- Searches for invalid file names and dates
- Identifies and attempts to fix bad compression structures, sectors, and invalid clusters
- Finds lost clusters (orphaned) and fixes cross-linked clusters
- Fixes file-system cycles (e.g. folders referring to themselves as their parent folder)
- Marks unrecoverable sectors as bad so they cannot be used again to store (and lose) data
What is a Sector? What is a Cluster?
Hard disks are made up of millions of tiny storage areas referred to as sectors; these sectors are a physical section of a hard disk platter in which data (usually up to 512 bytes) is stored. As hard drives increase in size, addressing so many sectors (a 1TB drive has up to approximately 2,147,483,648 sectors) becomes difficult. Thus, sectors are grouped, by Windows, into clusters. A cluster size is determined by the size of your hard disk partition.
What Happens to these Clusters?
Clusters can become orphaned (disassociated with their original data), incorrectly marked (unused put part of a cluster chain), invalid (incorrectly valued), or cross-linked (assigned to two files or twice for one file.) Another way to think of this is to take a look at your food pantry/storage/cupboard. Without regular upkeep, food expires; ingredients, purchased specifically for meals get forgotten; and labels may even fall off so you’re left guessing what spice concoction you have.
There are many reasons why this may happen and while you may be able to prevent much of this through proper hardware care, sometimes data just gets out of line without you realizing. Thankfully, chkdsk can often convert these broken clusters to files that you can copy somewhere safe.
How Do I Use chkdsk?
You can access chkdsk in two ways: through the graphical user interface (GUI) or through the command line interface (CLI.)
Note: chkdsk requires admin privileges. If you are unable to run chkdsk, please check with your systems administrator. If you run chkdsk on a disk from which files are in use (i.e. your “C” drive), you will need to allow Windows to run chkdsk next time you boot your PC (using autochk settings stored in HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\BootExecute.)
To run the chkdsk GUI:
- Click the Start button and click Computer
- Right click on any drive and click Properties
- Click the Tools tab and click Check Now
Caution: Check Disk may run for many hours (a full check on a 1.5TB drive once took 28 hours) so please be patient and don’t schedule a disk check when you require access to your PC
- Select Automatically fix file system errors and click Start
Note: I’d use “Scan for and attempt recovery of bad sectors” sparingly as many drives do this, for the most part, themselves
To run the chkdsk CLI:
- Bring up the command line and run chkdsk /F C: to fix file system errors only (on drive C)
- or run chkdsk /R G: to fix system errors and attempt recovery of bad sectors (on drive G)
How Often Should I Run chkdsk?
Your PC works better when there’s organization and data is both referenced and stored in the same place. Thus, I recommend you run chkdsk 4-12 times/year depending on your PC usage. Running it more often than once a month is probably a waste of time.
Note: If your computer is infected with a virus or if your hard drive is seriously damaged, chkdsk may fail mid operation. If you opted for a boot-time check, you may not be able to get into Windows to do much else with your PC (if it still boots into Windows.) Diagnosis and explanation of such an issue is out of the scope of this basic guide. If you’re stuck and need assistance, we can help at Windows Forums.