36

/F Fixes errors on the disk.
/R Locates bad sectors and recovers readable information (implies /F).

(from dir /?)

It just sounds like the same thing to me. I never know which one to use - is there even a difference? Or is it maybe for backwards compatibility with previous versions of Windows where there was a difference?

Kez
  • 16,631
  • 15
  • 67
  • 94

1 Answers1

48

chkdsk /r does the same thing as chkdsk /f only it also checks for bad sectors on the disk and recovers any readable information. Running chkdsk /r implies that also chkdsk /f is run.

chkdsk /f only checks for disk errors, not bad sectors.

Microsoft has a detailed page for chkdsk. The following is a snippet explaining /f and /r parameters.

Fixing disk errors:

Chkdsk corrects disk errors only if you specify the /f command-line option. Chkdsk must be able to lock the drive to correct errors. Because repairs usually change a disk's file allocation table and sometimes cause a loss of data, chkdsk sends a confirmation message.

Finding physical disk errors:

Use the /r command-line option to find physical disk errors in the file system.

Mehper C. Palavuzlar
  • 55,164
  • 49
  • 193
  • 250
  • 1
    I have to be honest, I really didn't know that. So /r does a "physical" check on top of what's normally checked by /f. Clear as day now, thanks. – Kez Jul 28 '11 at 07:17
  • @kez: Exactly. You're welcome. – Mehper C. Palavuzlar Jul 28 '11 at 07:20
  • 8
    Do not run a `chkdsk /r` unless you think your drive has physically bad sectors (e.g. Event Viewer > System... tells you). Checking a 1 terabyte hard drive could take a day depending on your drive performance. – Sun Nov 08 '16 at 23:57