How to safely remove a device blocked by the System process with a handle on \$Extend\$RmMetadata\$Txf

35,169

Solution 1

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.

Solution 2

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.

Solution 3

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.

Solution 4

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.

Solution 5

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.

Share:
35,169
Heinzi
Author by

Heinzi

Updated on September 18, 2022

Comments

  • Heinzi
    Heinzi almost 2 years

    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:

    Process Explorer Screenshot

    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?

    • BeowulfNode42
      BeowulfNode42 almost 8 years
      MS still haven't fixed this in Windows 10
  • mgr326639
    mgr326639 almost 9 years
    I had the same problem (caused by the same lock on \$Extend\$RmMetadata\$Txf), but in my case I was unable to dismount a TrueCrypt drive. I use Voidtools Everything and that process turned out to hold the lock. Solution: kill Everything before dismounting or make sure to have the drive mounted as a "removable medium" in the TrueCrypt settings. Files on that drive will then not be indexed by Everything.
  • Adrian
    Adrian over 8 years
    On Windows 8.1, I was able to change the drive letter, and then just eject the new drive letter from the system tray. Thanks.
  • Adrian
    Adrian over 8 years
    The only worry is if some application decides to write to the disk at the time you eject it. Unless you know for sure that the process that has the handle to that drive is actually not going to write to the drive, it is a little risky. YMMV.
  • Kevin M. Vansittart
    Kevin M. Vansittart over 8 years
    On Windows 7 x64, I was able to change the drive letter, and it ejected fine.
  • Heinzi
    Heinzi over 7 years
    I just tried that. Half a day later, Windows Explorer is still walking through the files, unsetting this attribute on each and every one of them. Would it have sufficed to unset this attribute on the root directory of the drive?
  • Heinzi
    Heinzi over 7 years
    Unfortunately, that this did not fix the issue for me: Just tried ejecting the device, same problem.
  • Sam
    Sam about 7 years
    It seems OP problem is different from yours
  • lightproof
    lightproof about 7 years
    Couldn't put an external USB 3.0 drive offline as the option was greyed out (Windows 7 x64), but removing the assigned drive letter in Disk Management worked like a charm! Thanks!
  • sm4rk0
    sm4rk0 almost 7 years
    @Spikolynn "Offline" option is available when you right-click the grey (leftmost) part of the Disk row.
  • Andry
    Andry over 3 years
    Another option have has worked for me along with the offline workaround is to relogin without reboot.
  • Khalid
    Khalid over 2 years
    Curiously, I was having this exact same issue when using the "Safely remove hardware" icon menu in the taskbar, but after waiting a few moments and clicking the icon menu again and it worked, so I guess it was just unlucky timing?