How to Fix Hard Drive Issues with CHKDSK (For Beginners)

By Connie | Posted to Howto on October 23th, 2020 |

Chkdsk, short for check disk, is a good disk check and repair tool if you have hard drive issues. While it's not easy to use for beginners because it involves in command lines. So, here will give you the detailed answers about what is chkdsk, what does chkdsk do, how to run chkdsk, how to solve pop-up error messages during chkdsk running, and more.

Table of contents:
1. What is chkdsk?
2. What does chkdsk do & how does chkdsk work?
3. Will chkdsk cause data loss?
4. When to use chkdsk?
5. How to use chkdsk to repair hard drives?
6. Common error messages & errors when running chkdsk.

What is chkdsk?

Chkdsk, a cmd command, is used to check the file system (In computing, a file system is a way for storing and organizing files) and file system metadata of a volume for logical and physical errors on Windows.

When used with parameters, chkdsk can also repair logical errors and restore the file system integrity on the volume. But it cannot repair the physical problems of a disk.

Note: Chkdsk for a Mac is another command, which is called fsck. Fsck is used in Terminal on a Mac. But usually, users use First Aid in Disk Utility to repair disks.

What does chkdsk do & how does chkdsk work?

Chkdsk contains two features: check and repair.

To check, type 'chkdsk' at the Command Prompt. Chkdsk will scan the volume. And then, you will see a file system report about the status of the target volume, including the file system type and structure, the discovered errors, and so on.

To repair, you can type chkdsk with parameters like 'chkdsk /f' to repair the discovered file system errors after checking.

You may be curious about how does chkdsk do the checking and repairing job. It is interesting. Come on to get the answers:

Chkdsk workflow

As data is stored in clusters on the disk, chkdsk reads the cluster location information saved in the current DBR (Dos Boot Record) and then compares it with the previous location information (recorded on the indexes).

During the comparison, if an error is found, the scanning report will list it. And if you run chkdsk with parameters like /f or /r, chkdsk will fix the found error. That is the process of repairing errors within the file system logic and structure.


1. Chkdsk can't repair the corrupted files like videos and photos.

2. If chkdsk can't read DBR that is corrupted by virus attack, physical damage like bad sectors, it can't repair the file system for sure.

Will chkdsk cause data loss?

It may be the question of greatest concern for most of us. Chkdsk won't make data loss when scanning a volume, but it possibly will when repairing file system errors. Because when chkdsk repairing the file system errors, it needs to delete corrupted or invalid indexes first. And then reorganize the logical structure of the file system through new computing algorithms. Finally, the files are re-accessible.

And the data that you can notice is lost is usually for heavy file system issues. If a file system with a light logical error, though there are some tiny changes during the repairing process, your files are still kept there.

When to use chkdsk?

As a disk check utility, you can run chkdsk regularly as routine maintenance to check your hard drive health. That aims to avoid your hard drive occurs serious issues later. But when your hard drive does have errors, you'll encounter occasions as below. At this time, you can make good use of chkdsk's repairing function.

Errors on your internal hard drive probably leads to:

Errors on your external hard drives may result in:

How to use chkdsk to repair hard drives?

If you have run into one of the above situations, it is recommended to use chkdsk utility.

The difference between 'chkdsk /f' and 'chkdsk /r':

Chkdsk has kinds of parameters, which helps users solve different disk errors. However, its /f and /r parameters are the most commonly used. Both of them are used to fix file system issues.

Maybe you are curious about the difference between parameter /f and /r, and which one is better. Here are the answers:

/r includes the functionality of /f. Besides, /r has additional analysis of physical disk errors. It locates bad sectors and tries to recover readable data from affected disk sectors. But /r can't fix bad sectors because they are physical problems.

Run chkdsk to repair internal hard drives:

Step 1: Boot your computer in safe mode (If you can't start up your PC normally).

Step 2: Type 'cmd' in Search Box and the Command Prompt will pop up. Then, right-click it and select Run as administrator.

Note: If you boot your PC to Enable safe mode with command prompt, the cmd window will on the screen when the computer boot successfully.

Step 3: Type the command as below (You can also use parameter /r) and press Enter.

chkdsk /f

Step 4: Type Y (means yes) when asked 'Would you like to schedule this volume to be checked the next time the system restarts? (Y/N)' and press Enter.

Chkdsk cannot run because the volume is in use

Step 5: Restart your computer (chkdsk will check and repair the boot volume when your computer restarts).

Run chkdsk to repair external hard drives:

Step 1: Type 'cmd' in Search Box and the Command Prompt will pop up. Then, right-click it and select Run as administrator.

Step 2: Type the command as below (You can also use parameter /r, and e: means your drive letter) and press Enter.

chkdsk /f e:

Step 3: Waiting for the chkdsk stages finished.

Fix Corrupted Hard Drive Using cmd in Windows 10/8/7

Common error messages & problems when running chkdsk

After you understand how to use chkdsk, it doesn't mean that you can run chkdsk successfully. The following error messages and errors may occur when running chkdsk. Let's analyze the reasons and then solve these error messages.

1. Chkdsk Access Denied

After you open cmd. exe and type chkdsk, it reminds that 'Access Denied as you do not have sufficient privileges...'.

Access Denied as you do not have sufficient privileges

It means that you haven't open cmd. exe as an administrator. Cmd is set within the Windows. And most of the cmd commands proceed tasks under the advanced management feature. So, it's necessary to invoke the administrator's rights.

Solution:Find Command Prompt app on your PC and right-click it. Select Run as administrator.

2. Chkdsk cannot run on a write-protected volume

After typing chkdsk /f or chkdsk /r, an error message: 'Windows cannot run disk checking on this volume because it is write protected' listed.

The system can't write information to a read-only volume. Chkdsk is in the system, and chkdsk /f and /r may make changes to the file system structure. And the following are the reasons why the volume is read-only and solutions:

Reason 1: The disk is set write-protected by the manufacturer.

Solution: Find the write protection switch on the disk and off it.

Reason 2: You have set the Read-Only mode for the disk where the volume on.


Step 1: Open cmd. exe, and type diskpart.

Step 2: Type list disk to find the write-protected volume number, like volume 1.

Step 3: Type select disk 1 (1 means the disk number)

Step 4: Type the command as below to make the disk writable.

attributes disk clear readonly
Attribute the disk to clear read only setting

Reason 3: The file system of the volume is corrupted.

Solution: Type the command as below (Here F: means your disk letter) in cmd exe. to try to fix the file system under the function of the three parameters.

chkdsk F: /f /r /x

3. Chkdsk can't run on a being used volume

It will remind you 'chkdsk cannot run because the volume is in use by another process', 'Would you like to schedule this volume checked the next time the system restarts? (Y/N)' after chkdsk /f or /r ran.

The target volume will be locked before chkdsk running. If you open a file on the volume, or it is the boot volume (being used), this error message will occur.


1. If it is a boot volume, it can't be stopped using. You should type Y (means yes) to make it be checked the next time the system restarts.

2. If it's not a boot volume, and you don't want to schedule it checked the next time the computer restarts, type N (means no). Then, close the opened file on the volume, and type chkdsk /f or chkdsk /r again.

4. Chkdsk not available for raw drives

After you have typed chkdsk with a parameter, chkdsk doesn't proceed with the command but indicates 'Chkdsk is not available for raw drives'.

It means the volume is a RAW. Windows can't recognize and read a RAW file system. According to the working principle of chkdsk that is mentioned above, chkdsk can't check and fix the file system logic and structure errors of the RAW volume, so chkdsk is not available for raw drives.

Note: Chkdsk is not unavailable for all RAW volumes. If the RAW volume is resulted from light file system errors, chkdsk will work. Or, it will shows 'Chkdsk is not available for raw drives'.

Commonly, format the volume can fix RAW issues. But it will cause data loss.


Step 1: Utilize some third party software like iBoysoft Data Recovery for Windows to recover the data on the raw volume first.

Step 2: Type diskpart in the Command Prompt.

Step 3: Type list volume to find the RAW volume like volume 10.

Step 4: Type the following command (Here 10 means the RAW volume number).

select volume 10
Format the volume to NTFS with cmd

Step 5: Type the command as below ( FS means the file system) to format the RAW volume to NTFS (You can also format it to exFAT, FAT32).

format fs=ntfs

5. Chkdsk displays a confirmation message

During chkdsk running, an error message similar to '10 lost allocation units found in 3 chains. Convert lost chains to files?' displayed.

Because chkdsk repairs a FAT file system usually through changing the disk's file allocation table, which can cause data loss. So, chkdsk will display a confirmation message like this.

Solution: To avoid data loss, it is suggested that you type Y. Then, the operating system will save each lost chain in the root directory as a file with a name in the format File nnnn.chk.

6. Chkdsk indicates 'Invalid Parameter'

It reminds an 'Invalid Parameter' after you have typed a cmd command.

The system can't recognize an incorrect command. You type a command word-by-word. Thus, it is inescapable that you have typed the wrong command. For example, you type a wrong letter by mistake, forget leaving a space, or others.

Solution: Make a confirmation on the typed command every time you finished typing, especially for the correction of a parameter.

7. Chkdsk got stuck in checking stages

It is possible to stick in any stage when running chkdsk. As chkdsk is a utility in Windows, it's usually caused by the operating system issue. And since chkdsk can repair file system logical errors, it's probably the file corruption of the boot volume.


Step 1: Make sure how many stages chkdsk has. For command chkdsk and chkdsk /f, there are three stages. For command chkdsk /r, there are five (the additional two are to check bad sectors).

Step 2: Open CMD Prompt as an administrator.

Step 3: Enter the follwoing command to repair the system files and press Enter.

sfc /scannow
Use command sfc /scannow to repair file corruption issue

Step 4: Waiting for the system files repaired, and then run chkdsk again.

8. Chkdsk cannot open volume for direct access

Sometimes, an error message like "Cannot open volume for direct access" may pop up when running chkdsk, it means that either another program is accessing the volume or the volume itself is inaccessible.

Solution:Disable the third-party services or create a clean boot environment. Then run chkdsk again. Go to Fix CHKDSK cannot open volume for direct access to get the detailed solutions.


Chkdsk is a very useful utility for checking and repairing disks. This guide can help you master chkdsk quickly. And more importantly, it also offers you efficient solutions for the error message issues during running chkdsk.