Technology in terms you understand. Sign up for the Confident Computing newsletter for weekly solutions to make your life easier. Click here and get The Ask Leo! Guide to Staying Safe on the Internet — FREE Edition as my thank you for subscribing!

Running CHKDSK When CHKDSK Won’t Run

A workaround.

Normally, you can request CHKDSK be run on the system drive at the next reboot. If that doesn't work, there is another way.
Running CHKDSK on C:
Running CHKDSK on C:. (Screenshot: askleo.com)
Question: As Administrator, I type chkdsk C: /F, click Enter, get error message that the drive is being used (of course) and do I want it to run the next time it starts? I type Y, hit Enter, it tells me it’ll begin at startup, I close the window, hit restart and the PC restarts, except it restarts the normal way. No chkdsk at all.

I don’t have a fix for why this is happening, though I suspect it would involve diving into the registry.

Instead, I have a workaround: a way to run CHKDSK on your C: drive anyway. It uses a technique that is kind of useful to know about.

Become a Patron of Ask Leo! and go ad-free!

TL;DR:

When CHKDSK won't run on boot

If CHKDSK won’t run on boot, you can run it anyway by rebooting into advanced troubleshooting tools and running the Windows Command Prompt from there. You’ll be able to run CHKDSK as well as other useful diagnostic or informative tools on your system drive.

Getting to a Command Prompt

Our destination is a Command Prompt window, but not via the normal means.

Start by closing all running programs. We’ll be rebooting a time or two.

In Windows 11, go to the Settings App and click on System, then Recovery .

Settings: System, Recovery in Windows 11.
Settings: System, Recovery in Windows 11. Click for larger image. (Screenshot: askleo.com)

In Windows 10 Settings, click on Update & Security and then Recovery.

Settings: Update, Recovery in Windows 10.
Settings: Update, Recovery in Windows 10. Click for larger image. (Screenshot: askleo.com)

In both versions, under Advanced Startup, click on Restart now.

Advanced startup, Restart now in Windows 11.
Restarting in Advanced startup in Windows 11. (Windows 10 is similar.) (Screenshot: askleo.com)

On the next screen, click on Troubleshoot.

Restart: Choose an option.
Choosing how to restart. Click for larger image. (Screenshot: askleo.com)

Click on Advanced options.

Troubleshoot, Advanced options
Advanced options under Troubleshooting. (Screenshot: askleo.com)

Finally, click on Command Prompt.

Advanced: Command Prompt
Choosing to restart via Command Prompt. Click for larger image. (Screenshot: askleo.com)

Run CHKDSK

In the resulting Command Prompt window, enter:

CHKDSK /F C:

Running CHKDSK on C:
Running CHKDSK on C:. (Screenshot: askleo.com)

The results will be displayed as they happen.

CHKDSK complete.
CHKDSK complete. (Screenshot: askleo.com)

When complete, you can scroll back up within the Windows Command Prompt window to see the full results.

When you’re finished, you can close the Command Prompt window, or enter “EXIT” followed by the Enter key, and then click on Continue – Exit and continue to Windows to reboot and return to Windows normally.

When C: isn’t C:

In the example above, the disk that contains the system drive was conveniently assigned its normal drive letter, C:. Unfortunately, that might not always be the case.

If, for example, in Windows Command Prompt, CHDKSK completes lightning fast (as it did for me in one case), do a “DIR C:” to see what that drive contains.

A different, empty drive, assigned C:.
A different, empty drive was assigned C:. (Screenshot: askleo.com)

The drive that had been assigned the letter C: was a different, apparently empty drive. No wonder CHKDSK was so fast.

If this happens to you, enter the following command to list all known drives on the system:

wmic logicaldisk get name

This will list the drive letters known to Command Prompt.

wmic get name.
Listing all known drive names. (Screenshot: askleo.com)

There may be an easier way, but I then just did a “DIR” command on each of those drive letters until the results matched the content of my system drive. In my case, that turned out to be E:.

System drive found as E:
System drive found as E:. (Screenshot: askleo.com)

What would normally be my real system drive at C: drive had instead been assigned the letter “E:” in this troubleshooting session. To run CHKDSK on it, I’d type:

CHKDSK /F E:

The Advanced Command Prompt

This technique gets us to an advanced command prompt. Normally, we can’t do a “CHKDSK C:” because C: is the system drive, and it’s in use. By rebooting into this advanced troubleshooting mode, Windows runs from one of the reserved partitions on your hard disk instead, not the C: drive at all. If you look carefully, you’ll see that the Command Prompt has opened on drive “X:”, which is the temporary system drive for this session.

You can examine and operate on the C: drive in other ways as well. Without Windows running, you may be able to manipulate files that are otherwise locked, run utilities (like CHKDSK) that normally require advanced access to the drive, and more.

Naturally, you need to be careful. It’s certainly possible to damage your system by deleting the wrong file or changing the wrong thing. But as long as you’re careful, it’s a quick and convenient way to get low-level access to system components you normally can’t modify.

Do this

Run CHKDSK on C: in this way, and remember that you now have another tool in your diagnostic and repair toolkit.

Want more tools for your toolkit? Subscribe to Confident Computing! Less frustration and more confidence, solutions, answers, and tips in your inbox every week.

Podcast audio

Play

14 comments on “Running CHKDSK When CHKDSK Won’t Run”

  1. “As Administrator, I type chkdsk C: /F”

    Does it matter to the text parser that the /F option is after the specified drive. I noticed all your examples put the option ahead of the drive: chkdsc /F C:.

    I’m rusty in the “old” DOS commands so I can’t remember. I realize the command window uses the same & enhanced DOS commands from before.

    Reply
  2. Hi Leo, maybe you or your readers can help me understand how bad block reports and chkdsk really work, because I’m stumped. I got 2 Event ID 7s, \Device\Harddisk0\DR0, has a bad block. CHKDSK C: /R found no errors. I used DISKPART to assign a drive letter to all 5 hidden partitions and run CHKDSK /R on each of them. No errors found on any of those either. FWIW, Win 10, fully updated, SSD. Any ideas, anyone? Thanks.

    Reply
  3. Thanks, it’s possible a user inserted a flash drive, although unlikely after hours – 6:34 PM yesterday. I addressed it almost immediately and reviewed all logs. Nothing since then. Keeping an eye on it. (It’s a client’s computer, not mine. It sent me alerts.)

    Reply
  4. When I clicked on Command Prompt in Advanced Options, I got a request for my Microsoft password. I typed it in and got the response that it was incorrect. It’s my most current password for Microsoft that I use frequently. (And it works!) Is it possible that Microsoft is looking for an earlier password I had used with that particular computer? (It’s now two years old.)

    Reply
    • It’s asking for the password of your login or administrator account. (It actually should show you the ID of the account it’s asking for.) If needed, ask at https://askleo.com/ask, and then include a screen shot in reply to the initial auto-response you’ll get after you submit your question.

      Reply
  5. You need to use Administrator Account on the local machine; not a Standard User account and not a Domain Account. If you click on Forgot Password, it tells you about this.

    Reply
  6. You said, “There may be an easier way, but I then just did a ‘DIR’ command on each of those drive letters until the results matched the content of my system drive.”

    When I want to find out which is the system drive, I run the Disk Manager (start typing diskman and click “Create and manage hard disk partitions”). That lets me see the drive that contains the system partition. I don’t know if that will work in Troubleshooting mode, but I imagine it should as it’s a system utility.
    DiskMan

    Reply

Leave a reply:

Before commenting please:

  • Read the article.
  • Comment on the article.
  • No personal information.
  • No spam.

Comments violating those rules will be removed. Comments that don't add value will be removed, including off-topic or content-free comments, or comments that look even a little bit like spam. All comments containing links and certain keywords will be moderated before publication.

I want comments to be valuable for everyone, including those who come later and take the time to read.