How to Scan & Fix Hard Drives with CHKDSK in Windows 10

Posted by Robert Hayes on June 23, 2019
chkdsk windows 10

Personal computers (PCs) have changed enormously in the almost four decades since the first IBM PC rolled off an assembly line in 1981. That first machine, a bricklike slab of steel running an Intel 8088 microchip at a galloping 4.77 MHz, came with one or two floppy disk drives – and a handy disk utility called CHKDSK (pronounced “Check Disk”), created by Tim Paterson for a fledgling software company known as Microsoft.

Today it would be difficult for a casual observer to describe the evolutionary process that has occurred between that first IBM PC and today’s Windows 10 desktop machine. The case is about the same size and shape, and there’s still a keyboard, but other than that, everything is different. Today’s CPUs run a thousand times faster and are a million times as complex, Apple sells watches with a display more capable than that found in the monochrome monstrosity of 1981, today’s machines have memory cores at least a thousand times denser, and have long since replaced clunking, chunking floppy disk drives with ultrasleek, ultrafast, absolutely silent Solid State drives, any single one of which could store more information than every 1981 model ever built. There is one thing that remains, however, despite all the revolutions and evolutionary developments in hardware and software – CHKDSK remains a useful and vital tool for disk drive health, nearly 40 years after its invention.

It should be acknowledged that it isn’t really the same CHKDSK. The first version of CHKDSK written by Tim Paterson, was a crude tool by today’s standards. With each upgrade and change to drive technologies and formats, CHKDSK has been written and rewritten again, with new functionality added and new techniques developed to deal with the exponentially-expanding hard drives of todays’ PCs. However, the same basic approach of a multipass scan of a drive to verify its soundness and functionality remains intact. In this article, I will describe to you how you can use CHKDSK to scan and fix hard drives under the Windows 10 operating system.

How CHKDSK Works

Although the details of how it does its job have changed from generation to generation, the same basic process takes place when CHKDSK is told to analyze a hard drive. CHKDSK starts by scanning the file system on the disk drive and analyzing the integrity of the files, file system, and file metadata on the drive. When CHKDSK finds logical file system errors, it fixes them in place, saving the data that is on the disk so that nothing is lost. Logical file system errors are things like corrupted entries in the drive’s master file table (MFT), a table that tells the drive how files are connected in the murky labyrinths of the drive’s hardware.

CHKDSK also fixes misaligned time stamps, file size data, and security flags on files on the drive. CHKDSK can then conduct a complete scan of the drive, accessing and testing every sector of the hardware. Hard drives are divided into logical sectors, defined areas of the drive where a certain defined quantity of data will be stored. Sectors can develop soft errors, in which case data has been written incorrectly to the magnetic medium, or hard errors, which are cases when the drive itself has an actual physical defect in the area designated as a sector. CHKDSK fixes soft errors by rewriting the faulty data, and resolves hard errors by marking that section of the disk as being damaged and ‘out of bounds’ for future use.

Because CHKDSK has been updated and upgraded repeatedly with each new generation of storage hardware, the program continues to work correctly to analyze and repair hard drives of any sort, even on the most modern OSes and using the most advanced drive technologies. The same process that used to be executed to analyze a floppy disk holding 160K, can today be executed to analyze a solid-state, all-electronic SSD holding 15 terabytes.

Running CHKDSK On Windows 10

Although there are several different ways that you can invoke CHKDSK on a Windows 10 machine, by far the most common and ordinary place to run the utility is via a command prompt known as the Windows PowerShell. However, because CHKDSK talks directly to drive hardware, it requires a special level of operating system permission known as administrative privileges. This just means that CHKDSK is allowed to run as though it was the account that is in charge of the computer.

To launch the Windows PowerShell, press the keyboard shortcut of the Windows Key + X. This brings up the power users menu in the start menu area, where you will see several options. You can release the Windows Key + X combination and type the A key (short for Admin) to launch the Windows PowerShell in administrative privilege mode. You can also simply move the mouse to the Windows PowerShell (Admin) line and click to launch the shell that way.

windows 10 command prompt admin

The next screen to appear is a User Account Control (UAC) window which will ask for permission to launch the Windows Command Processor and let it make changes to the PC. Select “Yes”.

windows 10 command prompt admin uac
The Windows PowerShell will now launch, a familiar black and white box with a text command-line interface. The most basic way to invoke CHKDSK is simply to type the name of the program “chkdsk”, followed by a space, then the letter of the drive you wish to examine or repair. In our case, it’s internal drive “C:”, so the command would be “chkdsk c:”

chkdsk windows 10
This basic invocation of CHKDSK will scan the disk and display status information, but it will not fix any errors that are encountered.

To run CHKDSK in a mode where it will actually fix problems that it encounters, you need to add several parameters. In a Windows PowerShell program, parameters are additional commands added to the end of the program name, with “/” characters before each parameter. In this case, to get CHKDSK to do a full scan and repair pass, we would want to type “chkdsk c: /f /r /x”.

The “/f” parameter instructs CHKDSK to fix any errors that it discovers during its scan. The “/r” parameter tells CHKDSK to locate any bad sectors and recover any readable information it finds there. The “/x” parameter tells CHKDSK to dismount the drive (take it offline from the operating system) before the process begins.

Additional CHKDSK Parameters

CHKDSK has a large library of optional parameters that you can use to modify the program’s behavior.

<Volume> – The Volume parameter allows you to specify a drive letter (with a colon) or volume name. You do not actually need the < and > characters.

[<Path>]<FileName> – The Path and FileName parameters can be used only a drive using the FAT or FAT32 organizational models. With Path and FileName you can specify the location and name of a file or set of files that you want CHKDSK to check for fragmentation. You can use the ? and * wildcard characters to specify multiple files.

/f – The /f parameter instructs CHKDSK to actually fix errors on the disk. The disk must be locked. If CHKSDK cannot lock the drive, a message appears that asks you if you want to check the drive the next time you restart the computer.

/v – The /v parameter displays the name of each file in every directory as the disk is checked.

/r – The /r parameter locates bad sectors and recovers readable information. The disk must be locked. /r includes the functionality of /f, with the additional analysis of physical disk errors.

/x – The /x parameter forces the volume to dismount first, if necessary. All open handles to the drive are invalidated. /x also includes the functionality of /f.

/i – The /i parameter can only be used with a drive formatted with the NTFS model. This speeds up CHKDSK by performing a less vigorous check of index entries, which reduces the amount of time required to run CHKDSK.

/c – The /c parameter also is only usable on an NTFS disk. This tells CHKDSK not to check cycles within the folder structure, which reduces the amount of time required to run CHKDSK.

/l[:<Size>] – The /i parameter can only be used with NTFS. It changes the size of the resulting log file to the size you type. If you omit the size parameter, /l displays the current size.

/b – The /b parameter is usable only with NTFS. It clears the list of bad clusters on the volume and rescans all allocated and free clusters for errors. /b includes the functionality of /r. Use this parameter after imaging a volume to a new hard disk drive.

/? – The /? parameter displays a help file containing this list of parameters and other instructions for using CHKDSK.

To summarize, the full command that should be typed into the Command Prompt is:

chkdsk [Drive:] [parameters]

In our example, it’s:

chkdsk C: /f /r /x

Using CHKDSK On a Boot Drive

A boot drive is the partition of your hard drive that the computer starts up from. Boot partitions are special in many ways, and one of those ways is that they require special handling for CHKDSK to be able to deal with them. CHKDSK needs to be able to lock any boot drive it scans, meaning that it cannot examine the system’s boot drive if the computer is in use. If your target drive is an external or non-boot internal disk, the CHKDSK process will begin as soon as we enter the command above. If, however, the target drive is a boot disk, the system will ask you if you’d like to run the command before the next boot. Type “yes” (or “y”), restart the computer, and the command will run before the operating system loads, allowing it to gain full access to the disk.

A CHKDSK command can take a long time to execute, especially when performed on larger drives. Once it’s done, however, it will present a summary of results including total disk space, byte allocation, and, most importantly, any errors that were found and corrected.

CHKDSK In Previous Editions of Windows

The CHKDSK command is available in all versions of Windows, so users running on Windows 7, 8, or XP can also perform the steps above to initiate a scan of their hard drive. In the case of older versions of Windows, users can get to the Command Prompt by going to Start > Run and typing “cmd”. Once the Command Prompt result is displayed, right-click on it and select “Run as Administrator” to grant the program the necessary privileges to execute CHKDSK successfully.

One warning note: if you use CHKDSK on an older hard drive, you may find that your hard drive space was significantly reduced after running the command. This result is due to a failing hard drive, as one of the crucial functions that CHKDSK performs is to identify and block bad sectors on the drive. A few bad sectors on an old drive will typically go unnoticed to the user, but if the drive is failing or has serious problems, you could have huge numbers of bad sectors that, when mapped and blocked by CHKDSK, appear to “steal” significant portions of your hard drive’s capacity.

Other Ways to Launch CHKDSK

If you dislike using the command prompt, there are other ways to invoke CHKDSK on your system. Perhaps the easiest is directly through the Windows Explorer.

Open a Windows File Explorer window and navigate to the drive you wish to check.

Right-click on the icon for your hard drive and select Properties.

Select the Tools tab and click on “Check” to launch CHKDSK with standard parameters.

CHKDSK remains a powerful and useful tool even 40 years after its original invention.

Do you have other Windows 10 questions? We’ve got the resources that you need!

Here’s our guide to troubleshooting problems with Windows 10 search not working.

Use your machine for fun? Check out tutorial on optimizing your Windows 10 machine for games.

Database users will want to understand the process of turning on Active Directory for Windows 10.

Power users will definitely need to read our walkthrough of how to keep a specific window on top in Windows 10.

If it’s performance you want, then examine our complete guide to Windows 10 performance.

30 thoughts on “How to Scan & Fix Hard Drives with CHKDSK in Windows 10”

Philica says:
What would the solution when hard drive test fail except replace the hard drive
Darwin Hector says:
This approach was very educational for me, since I was unaware of Windows PowerShell(Admin). Note, I am very familiar with DOS commands. However, this fix did not work for me because the hard drive was running too slow and may have other issue. Chkdsk timed out and the System rebooted.
Bob Marasa says:
3 hours and stuck on “scanning and repairing drive C : 12% complete. It’s a 1 terabyte drive. What should I do? I only wanted to fix drive so I could back it up. Acronis said I had a bad sector and should run chkdsk before it would be able to do dat backup. Help!
Lawal Kayode says:
Tried running check disk and got this responds, how do I resolve the issue
C:\Users\JIMKAY>chkdsk g:
The type of the file system is RAW.
CHKDSK is not available for RAW drives.
FredS says:
Looks like the disk you are trying to check is a raw volume and windows assigned a different letter to the volume you really want to check. Try typing>Diskpart
After Diskpart comes up: Diskpart>List Disk
Diskpart>select disk 0 [or whatever number is the disk you want to select]
Diskpart>List volume
notice the drive letter assigned to the volume you want to check (volume is just a name for a partition that’s been assigned a drive letter. Prior to formatting the volume is raw)
type: chkdsk [your drive letter:] /f /r (no brackets around drive letter)
FredS says:
type: chkdsk [your volume letter:] /f /r (no brackets around volume letter)
Paola says:
I’m trying to sort out a problem on my Toshiba laptop: I have run chkdsk C: /f /r /x and it says ‘windows has scanned the file system and found no problem’ which is good, then it says ‘no further action required’, but the last message says ‘Failed to transfer logged messages to the event log with status 50.’ what do I do now?
FredS says:
I think that’s minor and not an issue. Meaning that the event log won’t list what you just did with chkdsk. As long as chkdsk did its job, you should be good to go.
Ryan says:
I have an external drive. Do I have to do the chkdsk fix on every computer I plug it into to remember to ignore the bad sectors?
Boyd Hamulondo says:
Scanning and repairing drive c in Windows 10. How long can it take for a 930 Gb C :drive?
igobythisname says:
is ‘Error checking’ via hard drive properties the same as running CHKDSK?
FredS says:
I think it’s like running chkdsk /f and not /r
Steve says:
Sometimes check disk doesn’t work in serious data loss problem and at that time a need of data recovery software like Stellar Phoenix Windows Windows data recovery – Home need arises. Such data recovery tools help user to get their lost or deleted files from the corrupted hard drives. Even when those hard drives never repaired anymore.
HANS says:
I tried it on a D: recovery partition: no errors
Then I tried it with C: typing yes + enter then restarted. It may take long the clear art says . But for half an hour I’ve been looking at “Scanning and repairing drive C: : 11% complete” … the percentage should increase I’d think, but so far it doesn’t. So How long can ‘it takes long’be for a 500 GB HDD? and is there a way to terminate chkdsk?
Pua Tamandua says:
I’ve tried running it and it gets most of the way through and closes. I thought it stayed open with a reading but no. Does this mean it’s failing?
I ran a memory test as well and it said it would display results when restarted but nothing displayed. GRR.
No results from anything.
The file system keeps hanging up and needing restarted and sometimes large programs fail to open or a browser has issues but mainly the files.
Lidia Sagastume says:
How do you exit this cmd and check disk? How?
Michael L. Sheppard says:
Hi Jim Tanous, the above method is 100% working thanks a lot.
Jetze Toek says:
Or you can use chkdsk /? to view a list of available parameters..
Muken el Murloc #Team_Palto says:
what is a disc
Jetze Toek says:
Any thin, flat, circular plate or object is often called a disc.
Xyn Pihnar says:
I hate Western Digital, I always hated them, and still do, even more now that 1 hdd cable broke 3 drives.. fuck them.. fuck this shit and fuck life.. goddamnit.. im so fucking pissed godamn off with this shit.
Jason Franks says:
Thanks so much this was extremely helpful. Totally fixed my locked up laptop
Mark Peacey says:
It doesn’t work on my end
stace0401 says:
I entered the command exactly how the article said to, but it keeps saying it cannot lock the drive because my volume is being used by another another process. When it asks if I would like this checked upon reboot I select yes and restart my computer. I tried the command again, and got the same thing. I’ve done this several times now with no success. Is there another way to find out what process is using my volume that it isn’t allowing me to proceed with the chkdsk command?
HANS says:
It worked when I did an ‘enter’ after yes and then restart
Nachman Ben Harush says:
thank you very much!
Vasile Lucian BUJOR ( Vasi ) says:
Problem: After restart, when it’s written “wait 8 seconds or wait for it to start”, it doesn’t starts, like someone it’s pressing any keys, but I am not touching anything. What is happening? Windows 10 AE here.
Vasile Lucian BUJOR ( Vasi ) says:
More exactly: windows 10 skips disk checking like I would press the keys, but I don’t press any key. I don’t touch anything. Laptop X230 Lenovo, without any usb device connected on it.
Osei Emmanuel says:
When I type it, it give me stage 1 examining basic file system structure……
File record segment 27885 is unreadable
More. And more and more
After that nothing come up again
My hard disk is remaining the same what will I do
Now my hard disk is not accessible and file directory is corrupted my hard disk is 1.5TB I’m cry to lost my data pleasewhwt will I do hmmm
FredS says:
Try booting into the Windows Recovery Environment (RE) from a windows installation disk; go to repair my computer; advanced; and then startup repair. Might fix startup issues. If that doesn’t work try using system restore from the Windows Recovery Environment (RE). Also, research using Diskpart from the command prompt and making sure your system reserved partition as the active partition if startup repair doesn’t work. If your C: drive partition is marked as active, system will not boot and go into a loop. The system reserved partition that Windows 10 creates has all the bootup files on it that then boots windows from the c: system partition. Keep in mind that Diskpart might list the volume with a different letter than c: depending on how many partitions are on the drive. You can then also run chkdsk /f /r on the system reserved partition to make sure that partiton has no errors on it. If all else fails, remove your drive and hook it up via a usb to SATA cable or USB external docking station and copy all you data off the drive with another computer. Then buy a new drive and reinstall the OS and recopy your data back to your new drive in the system. WARNING: Be careful using Diskpart. Only use after backing your data off the drive first and after trying startup repair or system restore. Only use to mark the recovery partition as active unless you are comfortable using Diskpart. Good luck.
Ramiro Rodriguez says:
Awesome! I have some hard drive issues and I figured that CHKDSK was the way to go. But I haven’t used that since the days of DOS. Great advice. I’m going to fix my disk now. I hope to read more of your stuff 🙂
Eraviel says:
I did a chkdsk /f /r /x cuz my pc went BSOD with 0x00000154 bug check code, and I researched that this command is a solution, but it’s stuck at 17% for more than 5 hours already. My pc is not frozen cuz the dots in win 10 bootscreen is still moving.
Biswa Ranjan says:
Exactly same thing happen to me also. Wht to do as should I stop the scanning/wait till many more hours.
Should I face any issue back to O’s running???
Perfidious Albion bent & broke says:
Same here. Hours passed and the Boot screen still has the spinning dots.
Black Atheists says:
Does this work for HDD’s that were visible but are now invisible to Windows 10?
Ian Prietz says:
I had to use the Recovery restart option to get to the Advanced Troubleshooting options, so I could use that command prompt.
My Windows 10 kept notifying me of drive repair and errors but would never do anything on restart, even if I scheduled it with the Command Prompt the way you described.
Thanks for the help with the command though. Big help. It’s still running the scan right now.
Darin G Oar says:
im trying to run check disk but on restart it says press any key to skip…I dont press anything and it skips! any suggestions?
Clems says:
Could be a stuck key on your keyboard? Try it with no keyboard plugged in.
Destroy Progressives says:
I upgrade my boot drive (did a clone) and now whenever I boot windows 10, I get the “scanning and reparing drive e:” message, where E is just a storage drive that I use. It’s very annoying. I also get a random iomap64.sys BSOD but that’s probably unrelated.. prob should just do a clean install on my new hdd.
Clems says:
Clean install best option. It sounds like windows is getting confused as to which is your system drive (either that or the clone software caused an issue).
Destroy Progressives says:
Turned out the E drive was bad, won’t even register with a usb-to-sata. I might still do a clean install eventually but so far so good! 🙂
I cloned a 120gb SSD to a new 500gb Samsung EVO and then I reclaimed the rest of the data on the 500gb so my OS is now 100% on the new SSD.
Clems says:
SSD is the way to go! I’ve had my boot drive SSD for 3 years now and it’s still has100% life left. I’ve also got a 1TB Samsung Evo SSD data drive – best purchase I’ve ever made. Amazing drive 🙂
Destroy Progressives says:
Absolutely! The 120gb I cloned was almost 6 years old and worked perfectly since day 1! I just wanted an upgrade in space since 6 years ago, that 120 SSD was $300!
Stephen Partington says:
One of the most useful disk checking instructions I’ve found. Thanks very much for your clear presentation. It helped to solve a string of problems for me.
Yeison Oliveros says:
my hd have some bad sectors, every-time i use it (in external box) and 2 times show the msg “Format the disk to can use it”… and lost very much info…
With this process i can recover my drive and don´t get again the alert msg?
Thanks a lot…
Clems says:
No, this won’t work. Your drive has lost it’s format information which means your computer thinks it’s a new drive. It’s more than likely a corrupt partition. Unfortunately you will have lost all your data. You will need to get some recovery software and try to rescue the lost data.
James Noll says:
try Disk Doctor

Leave a Reply

Your email address will not be published. Required fields are marked *

Disclaimer: Some pages on this site may include an affiliate link. This does not effect our editorial in any way.