Friday 15 May 2020

System file check (SFC) Scan and Repair System Files & DISM to fix things SFC cannot

Summary

System file check is a utility built into the Operating System that will check for system file corruption The sfc /scannow command (System File Check) scans the integrity of all protected operating system files and replaces incorrect, corrupted, changed, or damaged versions with the correct versions where possible.  When it cannot repair the damage DISM should be run to fix as many errors as possible.

System file check works on Vista and UP

Dism works on win 7 and UP

If you are running an insider build (ie 14915) and SFC fails ~20% it is a known problem with this build

If you are running sfc &/or DISM to fix an underlying problem please tell us what that problem is!!!!


Details

If you have modified your system files (including Windows DLL files) running sfc /scannow will revert the system files back to the default state.


It is always a good idea to back up your data beforehand!


To run a system file check (SFC)

Go to start>Type CMD

Right click and run as Administrator

(called an elevated command prompt)

If you want to verify and repair the OS type sfc /scannow (note the space between sfc and "/")

If you just want to check (verify only) the OS type sfc /verifyonly (no changes will be made using verify only)

 You may have to run this up to 3 times to fix all the problems


When you have finished it will say one of three things


Windows did not find any integrity violations (a good thing)

Windows Resource Protection found corrupt files and repaired them (a good thing)

Windows Resource Protection found corrupt files but was unable to fix some (or all) of them (not a good thing)  If you get this message run DISM as described below


Image

If SFC was not able to repair some or all of the files there are a few options including a repair install from the OS dvd, and DISM (win 8 & UP)

If SFC did not find any violations it is still a good idea to run DISM Restorehealth

DISM

If you are on win 8 (and up) you  should also run DISM whether SFC found errors or not!!

From an elevated command prompt 

You can run Check, then Scan, but you should always run RESTORE HEALTH


To check the health (You would use /CheckHealth to only check whether the image has been flagged as corrupted)

run Dism /Online /Cleanup-Image /CheckHealth

To scan the health use /ScanHealth to scan the image for component store corruption. This option does not fix any corruption.

run Dism /Online /Cleanup-Image /ScanHealth

To RESTORE health (recommended)

Use DISM /Online /Cleanup-Image /RestoreHealth to scan the image for component store corruption, perform repair operations automatically, and records that corruption to the log file.  This generally takes 15-30 minutes depending on the corruption and size of the partition

You can run scanhealth & restore health at the same time like this

DISM.exe /Online /Cleanup-image /Scanhealth && DISM.exe /Online /Cleanup-image /Restorehealth

Type DISM /Online /Cleanup-Image /RestoreHealth .  (please note the space after "dism", & "online" & "image")
If the repair is successful you may want to re-run SFC just to check.

Image

After running DISM it is a good idea to re-run SFC /scannow to make sure all the issues were fixed.

If you get the error message "cannot find source files"you need to have an ISO file mounted and need to specify where it is located with the below command

The ISO must be exactly the same version as the running OS.  An ISO of 10586.0 will not repair a running system of 10586.35 because it has additional updates and files.

DISM /Online /Cleanup-Image /RestoreHealth /source:WIM:X:\Sources\Install.wim:1 /LimitAccess  Where "X" is the drive letter where the ISO is located.  Simply change the "X" to the correct drive letter

If you do not have an ISO you can make one.  The instructions are here


http://support.microsoft.com/kb/929833

http://pcsupport.about.com/od/toolsofthetrade/ht/sfc-scannow.htm

No comments:

Post a Comment