Helping people with computers... one answer at a time.
Chkdsk checks your disk for errors at a low level. That means chkdsk needs exclusive access to the disk. We'll look at why that is and what to do.
I think I've got a problem with my hard disk, and tried to run chkdsk but I keep getting this "chkdsk cannot run because the volume is in use by another process" error. What's that mean and what do I do to fix it?
•
Chkdsk is an important and little understood command line utility that comes with every version of Microsoft Windows. Its purpose, as its mangled name implies, is to "check" your "disk".
In order to do its work, chkdsk needs total and exclusive access to the disk it's about to check. If it doesn't have that "chkdsk cannot run because the volume is in use by another process" results. ("Volume" in this case really means "the disk that's being checked".)
I'll look at why, what to do, and what it looks like as it happens.
•
Here's the scenario we're talking about:

To have gotten this far, we'll have had to:
Start a Windows Command Prompt - in Windows Vista or Windows 7 doing so with administrative privileges (right click on the Start, All programs, Accessories, Command Prompt shortcut and click on "Run as Administrator")
Run the command CHKDSK, including the "/F" (fix) or "/R" (repair) options.
In order for chkdsk to be able to fix or repair a disk it needs to be the only program accessing the hard disk - the only program. If any other program has a file open on that disk, then it's considered to be "in use", and chkdsk can't get the exclusive access it needs.
"But I have no programs running!?" I hear you say.
Yes, you do. Windows is running. In fact, Windows has several files open including the files containing the registry, the system paging file, as well as the executable files that make up Windows itself.
Put another way, you can't run chkdsk with a fix or repair option on the drive from which Windows was loaded.
At least, not while Windows is running.
While getting this error on the Windows drive is the most common, it's certainly not the only case. Let's say you have a drive "D:". If you have Windows Explorer open on drive D:, or perhaps have a word processing document open that lives on that disk the same situation applies.
The solution is easier though: close those programs. Make sure nothing is accessing the contents of that drive and try again. You should be good to go.
Unless, of course, you happened to move your paging file to D:, in which case you're back in the "can't do it while Windows is running" situation as the paging file is always open while Windows is running.
The "magic answer", so to speak, is actually part of the very error message we see:
Answer the question with a "Y" for yes, followed by Enter, and chkdsk will run the next time you reboot Windows, before Windows itself begins to run. That's the only time that chkdsk can have the exclusive access to the system disk that it needs.
When you reboot, the reboot will proceed normally until the screen changes to include this message:

As the message indicates you have 10 seconds to press any key on the keyboard to skip the disk check. After 10 seconds chkdsk proceeds.
As chkdsk runs you'll see information updating on the screen:

Finally chkdsk completes, pausing for a moment with a summary report left on your screen as seen in this composite log:

Your specifics of course will be different, but the general idea is the same. As you can see here, chkdsk actually fixed a couple of problems that it found.
The computer should then reboot and load Windows normally.
"Chkdsk cannot run because the volume is in use by another process" simply means that in order to fix your hard disk chkdsk needs to be the only program accessing it. For some drives, that's as simple as closing programs which are using the drive in question. For the system drive from which Windows was loaded, it means a special step needs to be taken such that chkdsk runs when you reboot.
Article C4507 - October 28, 2010
Is it legal to run Windows inside a virtual machine? Chkdsk is not included with every windows. it is included with xp or greater.
04-Nov-2010
Posted by: steven at November 2, 2010 4:37 PM
What is the disk fixing? Parity? I load JPG files from my camera's memory card and when I back up the hard drive to my external back up drive, an error occurs which stops the process. I wondering what conclusions I can draw from this. Is the hard drive failing or are corrupt files from my camera being copied to the hard drive. An if this is the case, why can I copy from the memory chip to the hard drive and then be disallowed from copying the hard drive to an external disk drive with the same copy command?
04-Nov-2010
Posted by: RPR at November 3, 2010 3:28 AM
In XP Home, Start, Run, eventvwr, Application tab, then look for Winlogon files. These files are more readily found by clicking the Source column header, found at the top, to show the results in an alphabetical list. Clicking twice presents the list in reverse order so that Winlogon is likely right in front of you. Not all Winlogon files will be Chkdsk data, but most will be, likely. Double-clicking a file will render a small window of data where you can review the Chkdsk results. Further, UP and DOWN arrows, to the right, will navigate, as expected, and a copy button (double paper button below arrows) will copy the report to the clipboard which can be pasted into Notepad or WORD to preserve their history.
Posted by: Jon Bedford at November 3, 2010 12:06 PMHello Sir. How come chkdsk still aint running even if Ive rebooted my pc for like 10 times? Please help. Ive read all sorts of blogs/forums on web but yours I think was the most convincing...& has the easy steps. But chkdsk still aint working :(
29-Mar-2011
Posted by: Gela at March 28, 2011 11:21 PM
Leo, thanks for your detailed information on chkdsk, running chkdsk finally allowed me to delete a folder on my desktop that had been haunting me for some time.
I run a dual boot system Windows 7 64 bit alongside Linux Ubuntu 11.04, I believe my issue was that I copied some files from Linux into a Windows folder which had special characters in their names. I believe this is the case since I can access drives on the Windows side from Linux but not the other way around.
I had trouble running chkdsk because I would enter Windows before my Linux grub menu would time out which was always before the 10 second chkdsk bypass message (I would hit enter on the Windows operating system in the grub menu). After letting the grub menu time out, the chkdsk message appeared and I let it run with the /f command to fix, it fixed the files (actually removed them) and allowed me to delete the folder. (I should note that I have changed my grub menu to load Windows 1st and also have a 30 second delay instead of the default 10 second)
Thanks again.
Posted by: Tony at December 27, 2011 4:40 PM