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!

What’s the Difference Between CHKDSK /F and CHKDSK /R?

Chkdsk is a Windows utility that diagnoses and possibly repairs disk issues. It has several options, but the two most commonly cited are /F, for fix, and /R, for repair.

Wait.

Aren’t “fix” and “repair” just two words for the same thing?

Yes. But when it comes to CHKDSK, no.

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

TL;DR:

CHKDSK /F scans for and attempts to repair errors in the file system overhead information stored on a disk. CHKDSK /R includes /F, but also scans the entire disk surface for physical errors and attempts to repair them as well. Repairs are often successful, but not guaranteed.

Results of a CHKDSK /F
Results of an CHKDSK /F operation. (Click for larger image.)

Fix: CHKDSK /F

While “fix” and “repair” are synonyms in English, CHKDSK uses them to mean two different things.

CHKDSK /F is concerned with the information stored on the disk — more specifically, the file system information that tells Windows about the files, folders, and data on the disk, and their disk locations.

Think of it as the Table of Contents to a book. CHKDSK /F makes sure the Table of Contents entries all point to the right chapters, that all chapters have entries, and that the page numbers and spelling of the entries are correct.

It’s all about making sure the Table of Contents is correct and leads you to the right information in the book, and that all the information in the book can be found via the Table of Contents.

Back in disk terms, it’s all about making sure that the file system information is correct, leading Windows to the right data on the disk, and that all the data on the disk is correctly represented in the filesystem information.

If errors are found, CHKDSK /F does its best to repair the information, though it’s not always possible.

Repair – CHKDSK /R

CHKDSK /R begins by performing the same function as CHKDSK /F. (This implies that “CHKDSK /F /R” is redundant, as /R includes /F.) CHKDSK /R is also concerned with the physical condition of the information stored on the disk — more specifically, whether or not the data is readable.

Think of this as carefully examining our book page by page to make sure that all the text is legible and no pages are torn. This step doesn’t care what’s on the pages; only that they can be read and aren’t damaged.

In disk terms, CHKDSK /R scans the entire disk surface, sector by sector, to make sure every sector can be read properly. As a result, a CHKDSK /R takes significantly longer than /F, since it’s concerned with the entire surface of the disk, not just the parts involved in the Table of Contents. It carefully examines every single page, not just those referenced by the Table of Contents.

If errors are found, CHKDSK /R does its best to work around them, though it’s not always possible.

If errors are found…

Both /F and /R attempt to fix any errors they find.

CHKDSK /F attempts to build a new Table of Contents, meaning it tries to repair the file system overhead information. Depending on the nature of the errors found, though, CHKDSK may not succeed, resulting in lost files.

Occasionally, CHKDSK /F uncovers information that should be a file, or part of a file, but doesn’t know what to do with it. Then it creates “.CHK” files to contain that information. In our book analogy, it’s like saying “I found these pages, but I have no idea which chapter they belong to.”

CHKDSK /R attempts to use spare disk sectors, if any are available, to take the place of damaged sectors it finds, and then marks the original sector as “bad”, indicating it should no longer be used.

CHKDSK doesn’t cause errors

Because many people first learn about missing files or bad sectors after running CHKDSK, they often blame it for causing those errors. That’s a clear case of shooting the messenger.

CHKDSK doesn’t cause errors; it uncovers them. The errors were already there.

Disk errors happen. Disk failures happen. CHKDSK is one useful tool for recovering from certain types of errors.

But you still need to back up. CHKDSK can’t save you from everything, regardless of whether you use /R or /F.

Subscribe to Confident Computing! Tech problem solving & safety tips & a weekly confidence boost in your inbox every week.

I'll see you there!

10 Reasons Your Computer is Slow

Slow Computer?

Speed up with my special report: 10 Reasons Your Computer is Slow, now updated for Windows 10.

NOW: name your own price! You decide how much to pay -- and yes, that means you can get this report completely free if you so choose. Get your copy now!

Podcast audio

Play

33 comments on “What’s the Difference Between CHKDSK /F and CHKDSK /R?”

  1. Thanks Leo, you’re really nailing the most critical issues / issues / knowledge gaps this week!

    This is by far the VERY BEST explanation of CHKDSK I’ve yet come across. Finally, “light” … fully, now, out of the darkness w.r.t. this function / tool.

    Thanks so much!

    Dorian

    Reply
  2. Running CHKDSK (from personal experience): Sometimes, when you run CHKDSK it’ll tell you that the drive is busy and you need to reboot the machine first. In that event CHKDSK sets a flag, called the dirty bit, which tells it to run immediately after reboot. If CHKDSK completes successfully it resets or clears that dirty bit flag. Since the world isn’t perfect, you may come across a situation when CHKDISK doesn’t complete successfully and so it never clears the dirty bit flag. What happens in then is that every time the machine boots up CHKDSK is run again, fails again, and you find yourself in a ground hog day scenario (referring to the movie). There is no way to manually clear the dirty bit, such as in the Registry. The only way is to get CHKDSK to complete successfully. How do you get off this merry-go-round? Not easily.

    When CHKDSK gets ready to run it’ll show a message, very briefly, saying to press any key to cancel the scan process. If you’re quick enough to catch that and pound on the keyboard your machine will boot up, but that won’t clear the dirty bit. Once you get on the machine, run CHKDSK in its most minimalist configuration, with the /I and/or /C options and hope that it clears the dirty bit. This situation can get so hopeless that many online sites suggest the nuclear option: reformat and reinstall Windows.

    Reply
  3. I have a Dell computer that will not boot. How do I boot from a Windows 10 boot repair disk? I can get to the bios Boot order screen but can not change the order. It just stays on Hard Drive. Any help would be appreciated.

    Reply
  4. Hi Leo,

    My Western Digital passport external drive is giving an error “File record segment is unreadable” upon chkdsk /f run. It is a 1 TB external drive and I have bunch of such errors (bunch of unreadable addresses). How can I fix there errors and retrieve my data back? Thank you so much in advance for your help.

    Thanks!

    Reply
    • What you’re saying is your data is not backed up anywhere else? That’s bad.

      What I would do:

      1. Back up the entire drive as best you can right now. Ignore errors, and get as much off of it as you can.
      2. CHKDSK /R on the drive. This could take a long time.
      3. Back up the drive AGAIN. Hopefully, you’ll get more of your data back.
      4. Replace the drive.

      If after all that you’re not getting all the data you want, you may need to enlist the services of a data recovery company. This will cost money.

      Reply
  5. I ran chkdsk /f /r on boot up. I expected it would a take a long time, so at 13% complete I walked away. Two hours later and the computers login screen is up. I log into windows. Not like old days where after chkdsk ran, it was still there in DOS environment with report.

    So where do I go to find the chkdsk report? Yeah, its called a log file or some other such thing, so where is it to tell me what it found and what happened? For all I know it exited due to some error and never finished.

    thanks

    Reply
  6. I ran chkdsk d: /f /r /x on my laptop for 1TB for one of the partiotioned drive (drive D: in my case). Apparently, took more than 12 hours and still running.

    My PC is still running and i went to Disk MAnagement to try to assign a letter back to mount back the drive , but unable to do so. So, now my Drive D is disabled.

    I am not sure if i can stop it halfway and reboot. Is it safe to do so? OR should I just keep it running until it ends? If it really stuck for say more than a day, it is okay I reboot? Please help. thanks .

    Reply
    • If it’s doing it for that long, there’s probably a reason. (The fact that CHKDSK is still running is WHY you can’t assign drive letter). I’d let it run as long as you can tolerate, and then instead of rebooting, go to the command window in which CHKDSK is running and type CTRL+C. That’ll stop it.

      Reply
      • Thanks for the quick reply , Leo!

        Chkdsk just paused for a very long and progressing very slowly. It says in C Prompt – Stage: 9% , Total: 22% since this morning. I supposed my hardisk are giving way soon. I saw a prompt from my Asus laptop that says “S.M.A.R.T status bad, backup and replace” yesteday and I need to press F1 to resume to Windows. I called Asus and they said, hardisk issue. Most likely going to go soon.

        I was actually trying to copy files for backup and some files are unable to read the source. That is why I attempted to repair it.

        I will take your advise and keep it running for as long as I can tolerate hahaha… will do the Control + C to stop it. Just want to check with you that I can then mount my Drive D back by assigning the letter at Disk Management once I stopped Chkdsk with Control + C, yes?

        Reply
        • It should come back automatically, but if not you should be able to assign the drive letter. And yes, BACK THAT DRIVE UP. It’s failing. (Ideally, you’d back all drives up regularly before they fail.)

          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.