sfc /scannow and chkdsk /r/f

how are these similar/different

sfc /scannow

chkdsk /r/f
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

dj0rbitConnect With a Mentor Commented:
sfc stands for System File Checker. It scans all the windows OS system files to see if they are all there and not corrupted. If it finds a bad one, you will be prompted to insert your windows CD to extract a new file to replace the bad one.

chkdsk  is an option to fix the errors on your computer. For example, if you have shut down computer improperly/ system crashed - then chkdsk checks the hard disks for consistency or errors in terms of physical bad sector, bad file names, bad main file table.

The /r locates bad sectors and recovers readable information
The /f fixes erros on the disk
QlemoConnect With a Mentor DeveloperCommented:
Completely. SFC will check if important system files are changed (by checking a checksum), and replace changed/suspicious files by a copy located in DLLCache folder (or, if not found there, from the installation CD). The files checked are enumerated in some files for this purpose (and some are hardcoded).

chkdsk looks at the logical structure of your harddisk (or floppy disk), that is whether the free sector list fits the allocated sectors according to the file list; and it checks whether there are (physical) disk errors.
/r will try to repair them, if found.
/f will check the non-allocated sectors of your harddisk in addition, which lasts much longer. The check of non-allocated sectors is used to prevent delays if a bad sector is tried to be allocated later, and gives you an idea if your harddisk should be replaced soon (if many errors are reported).
rgb192Author Commented:
these seem like they are the same

i ran
chkdsk /r/f
and found no errors

so will
sfc /scannow
have no errors

it may take me 4 hours to run

am i wasting my time
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

it depends on the situation like for instance if you have a blue screen of death. It may be a good idea to run chkdsk because it may find errors on the hard disk.

as far as sfc, it also depends on the situation like if you had a O/S corruption and you can't boot get into windows via normal mode but you can get into it via Safemode. From within safemode you can run SFC to see if any files were corrupted and if so i can repair them as needed

i would only run these tasks if i think i may have a problems
xwizzardConnect With a Mentor Commented:
chkdsk is used to correct windows partition errors (NTFS, FAT32, FAT, exFAT)
The partition is a container for your operating system, so chkdsk is used to find "holes" in your container.

"chkdsk" will check for errors in the partition, but will not fix them unless you use "/F"
The "/R" function will do everything "/F" does but also scan for bad / unreadable sectors and adjust the partition accordingly. "/R" will take much longer to run as it has to scan each sector for errors.

The SFC is a different animal altogether. SFC will only check the status of essential windows system files.
Chkdsk looks at the box, SFC looks at what is inside the box.

My Rule of Thumb:
If you cannot boot, run chkdsk /f.
If you have virus issues, run SFC.
If your Hard Drive is a year+ old run chkdsk /r.
very valuable information.

Let me ask:
do I have to apply sfc and chdsk for each driver?
I mean suppose I open the cmd:
it's in C:\ drive, do I have to apply the same commands to another logical drive?

Hmm, the accepted answer is not much different to those posted earlier. Does that really grant it to be the only accepted answer? Only if the other posts were not to understand that would be appropriate.

chkdsk refers to a single logical volume (partition). It has to be issued for each volume, by either changing into a folder on those volume, or by supplying the drive letter:

chdsk d: /r /f

sfc does only need to be issued once. It only checks the files of the active OS, no matter where the files are located. Usually it should run automatically anyways, but sometimes you need to force it to run by starting it manually.
Yep, I tried as you say, you are right.

>>sfc stands for System File Checker. It scans all the windows OS system files to see if they are all >>there and not corrupted. If it finds a bad one, you will be prompted to insert your windows CD to >>extract a new file to replace the bad one.
I tried with iso mounted on a virtual drive with no luck, at least, Windows XP waits for a CD-ROM physical drive that is recognized under Disk Management.

i thought your questions was about knowing the differences. If so, then multiples experts have answered that question and should be award point properly.

I agree, credit should be shared when credit is due.
My comment was geared toward the Author's comment on not seeing a difference between the two.
One article does not make a journal.
rgb192Author Commented:
yes, that is a better way to award points.  I now agree.
All Courses

From novice to tech pro — start learning today.