How to safely remove a device blocked by the System process with a handle on \$Extend\$RmMetadata\$Txf
I have an external HDD which I would like to "safely remove". Unfortunately, my system (Windows 7 x64) complains that "the device is currently in use".
Using Process Explorer I discovered which process is holding a handle on the device:
Obviously, System
is not a process that I can just kill and be done with it. I've done a bit of research and this seems to be a common problem, but no solution has been found so far (except for rebooting the machine, which I'd like to avoid if possible).
Is there any solution to this problem that I've missed?
I've always had this problem with one of my Toshiba external drives. I value that drive really high because of its built-in shock detector, what is currently very hard to find. But the cannot-remove-it-safely issue was driving me crazy.
Today, I've hit this question/thread on social-technet MS site. While there's a lot of noise down there, they point out a few common issues. Like the Distributed-Tracking service. It's actually hard to read through it all due to some cohones-size-flame-war that escalated at some point, but reading the topic from its end helps;)
Anyways, sorry for my chatty mood, I've just fixed my case permanently.
I've got any Distributed-Tracking/Windows-Search/etc services off and was still unable to safely-unplug the drive. Someone somewhere suggested that "quick removal" is the culprit, but almost all my USB drives run on it and I still can remove them safely.
However, I actually tried switching this drive to "high performance mode" and .. it caused the TxfLogContainerXXXX handles to evaporate. So, it's true that this is the quick-removal option. However, this did not released my drive yet. Still couldn't eject it.
Then I have went to ComputerManagement->DriveManagement utility and I have removed any drive-letter assignements for that drive. Instantly afterwards, I was able to eject the drive.
Then I tried connecting it again, reassigning the drive letter, switching it to quick-removal and it seems to work properly and still be ejectable.
On the so-long topic on MS site, they also mention these actions. Someone suggested to:
- change drive letters and reboot
- or, try turning the drive "offline"
I think that the "turn the drive offline" via "computer management -> drive management" might actually be the quickest solution, however I have not tried it since my random attempts helped before I've read about that.
I had the same problem and found indeed that turning the drive offline is the fastest option as @quetzalcoatl already said.
Still a small caveat: after you turned the drive to offline, you should flip it back to online else next time you attach the drive it won't start and be recognized by the system.
Below is a very small script to automate the process, inspired by this:
https://groups.google.com/forum/#!topic/alt.msdos.batch.nt/dRhFTCtLJ3A
@echo off
:loop
echo list disk|diskpart|find "Online"
set "disk=."
set /p "disk=Pick disk number above to put offline: "
echo.
echo list disk|diskpart|find "Disk %disk%"
if errorlevel 1 (
echo Invalid drive selection!
pause
goto :loop
) else (
pause>con
echo select Disk %disk%
echo offline Disk
echo online Disk
echo exit
)| diskpart
Remember to run the batch file as administrator, and to press a key after you selected the disk number.
For me, the issue was caused by having file-content indexing turned on on the drive (which is on by default)
To disable it:
Right click the drive > Properties > Uncheck Allow files on this drive to have contents indexed in addition to file properties
After disabling contents indexing, I was able to eject the drive.
Five years later, I actually fixed this issue by resorting to a commercial tool: USB Safely Remove, which can "force stop" a device suffering from this issue. (Before that, I used the "take offline" workaround mentioned in quetzalcoatl's answer.)
Note: I am not affiliated with the creators of the software, I just mention them because their tool fixed the problem for me.
If your disk is set for quick removal (in drive policies) you should be able to safely unplug it without using the "safely remove" option.
I had the same error as Heinzi, but when I tried to solve it by changing the mode to "better performance", I noticed what the default option actually does :)
It sounds dangerous but perhaps without caching there really should be no worries?
BTW, my drive is a WD-500 and in drive management there is no option to turn drive offline.