web-dev-qa-db-ja.com

\ $ Extend \ $ RmMetadata \ $ Txfのハンドルでシステムプロセスによってブロックされたデバイスを安全に削除する方法

「安全に取り外したい」外付けHDDがあります。残念ながら、私のシステム(Windows 7 x64)は「デバイスは現在使用中です」と不平を言っています。

Process Explorer を使用して、デバイスのハンドルを保持しているプロセスを発見しました。

Process Explorer Screenshot

言うまでもなく、Systemは、私が強制終了してそれで処理できるプロセスではありません。私は少し調査しました 一般的な問題のようです ですが、これまでのところ解決策は見つかりませんでした(マシンを再起動することを除いて、可能であれば避けたい)。

私が見逃したこの問題の解決策はありますか?

40
Heinzi

東芝の外付けドライブの1つでこの問題が常に発生してきました。内蔵の衝撃検知器のため、これは非常に高く評価されています。現在、見つけるのは非常に困難です。しかし、安全に取り除けない問題は、私を狂わせていました。

今日、私は social-technet MS site でこの質問/スレッドをヒットしました。そこには多くのノイズがありますが、いくつかの一般的な問題を指摘しています。分散追跡サービスのように。ある時点でエスカレートしたいくつかのcohones-size-flame-warがあるため、実際にすべてを読み通すことは困難ですが、最後からトピックを読むと役立ちます;)

とにかく、おしゃべりな気分で申し訳ありませんが、私はケースを完全に修正しました。

Distributed-Tracking/Windows-Search/etcサービスをオフにしても、ドライブを安全に取り外すことができませんでした。 「迅速な取り外し」が原因であると誰かが提案しましたが、ほとんどすべてのUSBドライブがその上で実行されており、安全に取り外すことができます。

ただし、実際にこのドライブを「高パフォーマンスモード」に切り替えてみましたが、.. TxfLogContainerXXXXハンドルが蒸発しました。したがって、これがクイック削除オプションであることは事実です。しかし、これはまだ私のドライブを解放しませんでした。それでもイジェクトでき​​ませんでした。

次に、ComputerManagement-> DriveManagementユーティリティに移動しましたそのドライブのドライブ文字の割り当てをすべて削除しました。その後すぐに、ドライブをイジェクトすることができました。

次に、もう一度接続してドライブ文字を割り当て直し、クイックリムーバルに切り替えたところ、正常に機能しているにもかかわらずイジェクト可能であるようです。

MSサイトの非常に長いトピックで、彼らはこれらの行動についても言及しています。誰かが提案しました:

  • ドライブ文字を変更して再起動する
  • または、ドライブを「オフライン」にしてみてください

「コンピューターの管理->ドライブの管理」を介して「ドライブをオフラインにする」のが実際には最も速い解決策かもしれないと思いますが、それについて読む前に私のランダムな試みが役に立ったので試してみませんでした。

23
quetzalcoatl

私の場合、問題はドライブでファイル内容のインデックス作成がオンになっていることが原因でした(デフォルトではオンになっています)

それを無効にするには:

ドライブを右クリックし、[プロパティ]> [このドライブのファイルにファイルプロパティに加えてコンテンツのインデックスを作成することを許可する]をオフにします。

コンテンツのインデックス作成を無効にした後、ドライブを取り出すことができました。

3
Raymond

5年後、商用ツールを使用してこの問題を実際に修正しました: SB Safely Remove 。これにより、この問題のあるデバイスを「強制停止」できます。 (その前に、私はケツァルコアトルの回答で述べられている「オフラインにする」回避策を使用しました。)

注:私はソフトウェアの作成者とは関係ありません。彼らのツールで問題が解決されたため、ソフトウェアの作成者とは関係ありません。

2
Heinzi

ディスクが(ドライブポリシーで)迅速に削除できるように設定されている場合、「安全に削除」オプションを使用せずに安全にディスクを取り外すことができるはずです。

私はハインジと同じエラーがありましたが、モードを「より良いパフォーマンス」に変更して解決しようとすると、デフォルトのオプションが実際に何をしているのか気づきました:)

それは危険に聞こえますが、おそらくキャッシュがなければ、本当に心配はないはずですか?

ところで、私のドライブはWD-500で、ドライブ管理ではドライブをオフラインにするオプションはありません。

1
Spikolynn

私は同じ問題を抱えていて、実際に@quetzalcoatlが言ったように、ドライブofflineをオンにすることが最速のオプションであることがわかりました。

まだ少し注意点:ドライブをofflineに切り替えた後、次に接続するときにonlineに戻す必要があります。ドライブは起動せず、システムによって認識されません。

以下は、これに触発されてプロセスを自動化するための非常に小さなスクリプトです。
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

管理者としてバッチファイルを実行し、ディスク番号を選択した後でキーを押すことを忘れないでください。

1
Gruber

除去ポリシーをdevmgmt.mscからより良いパフォーマンスに設定しても、私の1TB Seagate Expansion Portable Driveには役立ちませんでした。 services.mscを使用して「Crypkey License」をオフにした場合のみ、すぐに機能しました。

0
jous

ドライブ文字の変更/削除、オフラインにするなど、他のすべての回答の提案を試しましたが、これらの方法は機能しませんでした。

私はむしろその動作を切り替えて遊んだり、すぐに削除するように設定したりしたくないです。

USB Safely Removeが助けになりましたが、メインのリストでドライブをすばやくクリックしても、直接ではないかもしれません。 LockHunter以外にも*Metadataファイルはドライブのルートにあり、MsMpEng.exeも実行されていました。そのプロセスで使用されているファイルを強制的に停止させると、プロセスを削除するのに役立ちました。

他のドライブや状況では、他の具体的な証拠がまだ見つからない場合でも、Open Hardware Monitorがロックされているように見えました。ただし、ファンの速度を毎回設定する必要があるため、プログラムを閉じたくない。

0
Pysis