如何安全地删除由系统进程阻止的设备,该进程具有 \$Extend\$RmMetadata\$Txf 句柄

如何安全地删除由系统进程阻止的设备,该进程具有 \$Extend\$RmMetadata\$Txf 句柄

我有一个外置硬盘,我想“安全移除”。不幸的是,我的系统 (Windows 7 x64) 提示“该设备正在使用中”。

使用进程探索器我发现了哪个进程正在持有该设备的句柄:

进程资源管理器截图

显然,System这不是一个我可以轻易终止的过程。我做了一些研究,这个似乎是一个常见问题,但目前还没有找到解决方案(除了重新启动机器,如果可能的话我想避免这种情况)。

有没有我遗漏的解决这个问题的方法?

答案1

我的东芝外置硬盘一直存在这个问题。我非常看重这款硬盘,因为它内置了震动检测器,目前很难找到。但无法安全移除的问题让我抓狂。

今天,我遇到了这个问题/话题social-technet MS 网站。虽然那里有很多噪音,但他们指出了一些常见问题。比如分布式跟踪服务。实际上,由于某些时候升级的冲突,很难通读所有内容,但从结尾阅读主题会有所帮助;)

无论如何,很抱歉我说话太啰嗦,我刚刚永久解决了我的问题。

我关闭了所有 Distributed-Tracking/Windows-Search/等服务,但仍然无法安全拔下驱动器。有人建议“快速移除”是罪魁祸首,但几乎所有 USB 驱动器都运行在它上面,我仍然可以安全地移除它们。

不过,我实际上尝试将该驱动器切换到“高性能模式”并且......它导致 TxfLogContainerXXXX 句柄消失。所以,这确实是快速移除选项。但是,这还没有释放我的驱动器。仍然无法弹出它。

然后我进入计算机管理->驱动器管理实用程序,然后删除了该驱动器的所有驱动器号分配之后我立即就能弹出驱动器了。

然后我尝试再次连接它,重新分配驱动器号,将其切换为快速删除,它似乎工作正常并且仍然​​可以弹出。

在 MS 网站上的长篇主题中,他们也提到了这些操作。有人建议:

  • 更改驱动器号并重新启动
  • 或者尝试将驱动器转为“离线”

我认为通过“计算机管理->驱动器管理”来“将驱动器脱机”实际上可能是最快的解决方案,但是我没有尝试过,因为在我读到相关内容之前我的随机尝试有所帮助。

答案2

我也遇到了同样的问题,确实发现转动驱动器离线是最快的选择,正如@quetzalcoatl 所说。

还有一个小警告:当你把驱动器转到离线,你应该把它翻转回在线的否则下次连接驱动器时它将无法启动并且无法被系统识别。

下面是一个很小的脚本,用于自动化该过程,其灵感来自此:
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

记住以管理员身份运行批处理文件,并在选择磁盘号后按下一个键。

答案3

对我来说,该问题是由于驱动器上打开了文件内容索引(默认情况下处于开启状态)引起的

要禁用它:

右键单击驱动器 > 属性 > 取消选中允许此驱动器上的文件除了文件属性之外还具有索引内容

禁用内容索引后,我能够弹出驱动器。

答案4

如果您的磁盘设置为快速删除(在驱动器策略中),您应该能够安全地拔下它,而无需使用“安全删除”选项。

我遇到了与 Heinzi 相同的错误,但是当我尝试通过将模式更改为“更好的性能”来解决该问题时,我注意到默认选项实际上做了什么:)

这听起来很危险,但是如果没有缓存,也许就真的不用担心?

顺便说一句,我的驱动器是 WD-500,在驱动器管理中没有将驱动器离线的选项。

相关内容