It’s a tool for disk maintenance and repair.

Fair enough. It’s easy for us computer geeks to take things for granted that we shouldn’t.
CHKDSK is a command-line tool that checks disks. I’ll talk about what the command line is as well as what it means to check a disk.
I’ll also show you how to run CHKDSK step by step.
Become a Patron of Ask Leo! and go ad-free!

CHKDSK
CHKDSK checks your hard disk for problems and tries to fix them. You run it using Command Prompt. It can find missing info, fix file errors, and even look for bad spots on the disk. It’s useful if you suspect disk-related issues.
Checking a disk
Files on a disk live in folders; folders can live in other folders; and everything lives in your disk, which might be a partition on or portion of a larger disk. On top of that, there may be security information about who is allowed to access what and in what ways they’re allowed to access it.
That’s pretty confusing. All you care about is getting what you expect when you access a file.
All that confusing stuff is information — data — stored on the disk keeping track of your files and folders. CHKDSK’s primary job is to make sure all the administrative information about the files, folders, permissions, and more is correct.
Normally, all of that information is correct. The system keeps it correct from startup to shutdown.
Unfortunately, a variety of errors can cause it to be incorrect. Things like not shutting down your computer properly, software issues, and hardware errors can cause problems and damage the administrative information on the disk.
CHKDSK’s job is to try to repair those errors.
What’s a command-line tool?
Most programs in Windows appear as or in a window.
Command-line tools do not. They don’t know about on-screen windows and don’t display their results in them. They rely on the Command Prompt, which is nothing more than a non-windowed environment that mimics the days before Windows, when all programs were command-line tools under MS-DOS.
So to run CHKDSK, we start with a Command Prompt.
Running CHKDSK
You’ll find either Command Prompt, Power Shell, or Terminal in your Start menu. Any of the three will do.
Right-click the Start menu, and it should be listed. You’ll want the “(Admin)” version so it runs with full administrative privileges.

After a UAC prompt (since we’re running “as” administrator), a new window opens that looks something like this.

Command-line tools are run by typing the command (you may need to click on the Command Prompt window first to ensure it gets your keystrokes) and pressing the Return or Enter key. Any output the tool generates shows up in the window below what you’ve typed.
Running CHKDSK
Try it now: after opening a Command Prompt window and/or clicking it to make it active, type CHKDSK followed by the Enter key.
You may see something like this.
Access Denied as you do not have sufficient privileges. You have to invoke this utility running in elevated mode.
That means you haven’t run Windows Command Prompt as administrator. Close the Command Prompt (either by clicking the “x” in the upper-right of the Window or typing “exit” followed by the Enter key), and start it again, this time being sure to select the “(Admin)” version listed (see image above).
Without any parameters (I’ll describe a few in a moment), CHKDSK does nothing more than check the disk. It won’t try to fix anything; it’ll simply report any problems it finds.

“Windows has scanned the file system and found no problems” is good news.
CHKDSK parameters
By default, CHKDSK operates on the “current” disk, which in almost all cases is C:. (If you run into problems, see the next section below.)
To have CHKDSK check a different drive, simply follow the CHKDSK command with a space and then the drive designator.
CHKDSK D:
This directs CHKDSK to check your D: drive.
To have CHKDSK fix any problems it finds, include the “/F” (Fix) parameter.
CHKDSK D: /F
This command checks the D: drive and, if any errors are found, CHKDSK attempts to repair them. The results are relayed to you via on-screen output.
The next most common way we use CHKDSK is to check for bad physical sectors using the “/R” (Repair) option.
CHKDSK D: /R
When running /R, CHKDSK checks the entire disk surface for bad sectors and attempts to repair or work around any it finds if it can. Running /R accomplishes /F as well.
The special case of C:
C: is special. CHKDSK can’t repair drives that are in use, and if Windows is running, C: is in use. If you try to run CHKDSK /F on drive C:, you’re likely to see this.

Answer Y followed by Enter and then reboot your system. CHKDSK will run before Windows starts so it can repair the drive before Windows starts using it.
Do this
Run CHKDSK if you suspect disk-related issues. The most common ways to use CHKDSK are:
- CHKDSK /F to check and fix the current drive (a reboot might be required)
- CHKDSK D: /F to check and fix a specific drive (in this case, D:)
- CHKDSK D: /R to check, fix, and look for bad sectors on a specific drive (in this case, D:)
You can also run CHKDSK /? to get a list of additional options.
Subscribe to Confident Computing! Less frustration and more confidence, solutions, answers, and tips in your inbox every week.
Hi also,
I ran a cmd prompt.
Typed: chkdsk e: /f /r
(e:) is my external HD
The message I got was:
Corruption is due to bad sectors was found while examining files in directory \soft\.
Entries 0 to 4095 were affected.
The bad sector will only be repaired if the “/r” option is specified.
I don’t know what to do from here.
Please help
Try running it without the “/f” parameter. “/f” is included in “/r” and specifying the “/f” parameter might somehow cause the sector repair not to happen.
a) BACK UP THE DATA ON THE DRIVE
b) Don’t specify “/F”. “/R” includes that. Just specify /R.
Hi,
I have a laptop that is going through CHKDSK on startup, reporting many errors but has not finished before the laptop crashed to BSOD. Can I mount the C: drive on my other PC, assign a drive letter and let CHKDSK do what it needs to there and then return it to my laptop?
Yes, that’s a good approach.
Thanks for a great article! It was a long time ago I had to use Windows computers so this guide helped me fix my daughters old crappy Windows laptop 🙂
I have been a follower of your advice for 10+ years. Once again your information solved a problem. My Macrium Reflect log showed bad sectors in 2 clusters. Your chkdsk article gave clear instructions and Macrium was able to make a successful backup overnight. Thank you very much.
Leo –
Hi. In Windows 7, when I access Error Checking via the GUI (and not Command Prompt), there is a Check Disk Options box that allows me to choose whether I want the utility to (1) automatically fix file system errors and (2) scan for and attempt recovery of bad sectors. However, in Windows 10, when I access Error Checking via the GUI, there is no such Check Disk Options box.
My questions are:
1. In Windows 10, when I run Error Checking via the GUI, will it automatically fix/repair any error it finds?
2. If the answer to question #1 is yes, what type of fix/repair is it: /F or /R?
Thanks.
I can’t seem to find confirmation but I would assume:
1) yes.
2) /F. (/R is the MUCH slower scan of the entire disk surface.)
Hi i’m running CHKDSK /R and it is saying “a disk read error occuredc0000483”
the disk does not have enough space to replace bad clusters detected in file 1DF of name ……
does this mean i’m wasting my time or should i let the program run it’s course
thankyou for your time
Let the program run to identify and perhaps repair other sectors, but then immediately BACK UP that disk, and replace it.
I have been a tech support person for over 40 years and I just got a message from chkdsk /f that I have never seen before and don’t know what to do about it!
The program says: examining file name linkage and reports 2 errors like: An unspecified error occurred (696e5478689b2e 532).
A google search provided no assistance.
Sounds like an error on the disk that even CHKDSK can’t understand or recover from. I hope you’re backed up.
Fortunately, everything is backed up. The real question is whether this 500G SSD is toast or whether it just needs to be reformatted.
You can try reformatting it, although, even if it works, there still might be an underlying problem which is causing it that could cause more errors in the future. So, I wouldn’t use that for system critical work.