web-dev-qa-db-ja.com

Windows PCからUSBメディアを安全に削除する理由は何ですか?

私がRushにいるときは、システムトレイの安全な取り外しアイコンを右クリックしてこのルートを介してプラグを抜かずに、USBペンドライブまたはUSBケーブルをデスクトップPCまたはラップトップの外付けハードドライブから自動的に引き抜きます。これまでのところ、私が「ラッシュの中にいる」たびに、不都合なことは何も起こりませんでした。

安全に削除するアイコンを右クリックする理由は何ですか?これを実行しないと、USBメディアの情報を本当に失う可能性がありますか?

編集

そのような情報が失われる脆弱性は大幅に増加ですが、USBメディアがコンピューターから引き抜かれたときにまだ点滅していない場合(点滅ではない)ですか?

97
Simon

はい、できます。デバイスの使用中(読み取りまたは書き込み)にデバイスを取り外すとどうなるかです。

USBドライブを差し込むと、PCにデータを書き込んだり読み取ったりするための無料の制限がPCに与えられます。その一部はキャッシュされます。

キャッシュは、情報をUSBデバイスにすぐに書き込むのではなく、PCのメモリ(RAM)に保持することで発生します。この情報が書き込まれる前、または書き込まれている間にUSBドライブをPCから取り外した場合、ファイルが破損することになります。

ただし、特に有効にしたくない場合を除き、WindowsはUSBデバイスのキャッシュを自動的に無効にします。デバイスから何かを書き込んだり読み取ったりしていない場合、ほとんどの場合、「ハードウェアの安全な取り外し」ボタンをクリックする必要はありません。

これは、独自のファイルを破壊することを防ぐ追加のセキュリティレベルとして存在します。

これにより、ファイルが「正常に」閉じられ、データ、ポインター、およびファイルサイズインジケーターが保持されます。ディスクに書き込むとき、コンピュータは常にバッファを「フラッシュ」するわけではなく、データの一部のみが書き込まれた可能性があります。適切な手順を使用することで、データとポインタが良好な状態にあることが保証されます。

ソース

104
Dave

2番目の理由は、フラッシュドライブは、書き込みコマンドの後、約0.25秒間安定した電力が必要であることです。これは基本的な物理的な問題です。ランダムな要因により、一部の書き込みでは論理的な1ビットが電気的な0.72状態のままになる場合があります。修正は簡単です。ビットを書き換えるだけで、おそらく数回です。結局それはつきます。

あなたが本当に運が悪い場合、落ちるビットはファイルシステムのテーブルにあり、破損しています。ディレクトリ全体。

45
MSalters

フラッシュドライブの内部で行われているすべてのことに気づく人はほとんどいません。セクタが1ステップで消去および上書きされるハードドライブとは異なり、フラッシュドライブは、消去サイクルを実行するよりもはるかに高速に、空白の528バイトページにデータを書き込むことができます。さらに、各消去制御回路はかなりの量のシリコンを使用するため、フラッシュチップには通常、ページごとに個別の回路はありませんが、代わりに「ブロック」ごとに1つあり、各ブロックには数百または数千のページが含まれます。つまり、セクターに異なるデータが書き込まれるたびに、以前の空白の領域に書き込まれ、古いコピーが何らかの理由で「古い」とマークされます。ある時点で、フラッシュは「ガベージコレクション」サイクルを実行し、ほとんどが古いページを含むブロックを識別し、古くないすべてのページをそのブロックからスペースのある別のブロックにコピーします、ブロックを消去します。そのような操作は非常に遅い可能性があるため、一部のドライブは、可能であれば、何も実行されていないときに操作を実行しようとします。ドライブは、そのようなクリーンアップをいつ実行するかをコンピューターに通知しません。これは、コンピューターが通常気にしないためです。 「落とし穴」は、コンピュータがドライブに電源が失われそうであることを知らせない場合、そのようなクリーンアップを実行しても安全かどうかをドライブが知る方法がないということです。

高品質のフラッシュドライブは、古いコピーが消去される前に常にデータの新しいコピーが完全に書き込まれるように設計されていますが、すべてではなく、各ブロックのどのコピーを最新と見なすべきかを常に把握できることに注意してくださいフラッシュドライブのデザインは完璧です。電源障害の通知がない場合、データの損失または不整合に対する100%の証拠となるように設計されたアルゴリズムは、おそらく少なくともより緩やかな制約を満たす場合の2倍の速度になります。 1つまたは2つのフラッシュ書き込み操作を完了するのに十分なエネルギーが残っている間にトリップするハードウェア電源障害通知を追加すると、時間のペナルティは減少しますが、電源障害通知を100%信頼できるものにすることは難しい場合があり、すべての実装が完璧であるとは限りません。

21
supercat

デバイスの安全な取り外しに失敗すると、ファントムデバイスがWindowsに残ります。これは通常、直接的な問題ではありませんが、数百のファントムデバイスを蓄積すると、問題が発生し始めます。

明確化のための編集:つまり、ファントムデバイスは、ドライバーがインストールされているが、USBポートに接続されていないデバイスです。 Windowsはインストールされたデバイスを追跡しますが、デバイスが「安全に削除されていない」ため、ドライバーはそのUSBポートに引き続きロードされます。これにより、フラッシュドライブを接続したときに新しいドライブ文字を割り当てることから、ビデオゲームがそこにないコントローラーを検出することまで、さまざまな問題が発生する可能性があります。 Windowsからデバイスを安全に削除すると、デバイスがデータを書き込まないようにするだけでなく、そのUSBポートからドライバーをアンロードするようWindowsに指示することになります。オンザフライでドライブを取り外すと、データが破損するおそれがあるだけでなく、Windowsが実際に適切に処理できないファントムデバイスが作成されるリスクもあります。

デフォルトでは、Windowsはファントムデバイスをデバイスマネージャーに表示しないため、ほとんどの人はこの概念に慣れていません。これらのデバイスを見つけるには、管理者としてコマンドプロンプトを手動で実行し、set devmgr_show_nonpresent_devices=1と入力します。これにより、デバイスマネージャーは現在のセッションのファントムデバイスを表示できます。

手で簡単に取り除くことができないほど多くのファントムデバイスが存在する可能性があります。 GhostBuster は、ファントムデバイスを簡単に表示および削除できるように設計された軽量のGUIです。

リファレンス: https://windowssecrets.com/newsletter/how-to-prevent-and-remove-phantom-devices/

8
acarbonaro

Windows自体は、特定の設定(デフォルト設定)を使用する場合、ハードウェアの安全な取り外しオプションを使用する必要がないことを通知します。

クイック削除とパフォーマンスの向上

Windowsでは、USBデバイスを最適化して、迅速な取り外しやパフォーマンスの向上を実現できます。デフォルトでは、WindowsはUSBデバイスを最適化して迅速に取り外します。この設定には、デバイスマネージャーからアクセスできます。[スタート]メニューを開き、「デバイスマネージャー」と入力し、Enterキーを押して起動します。

デバイスマネージャーの[ディスクドライブ]セクションを展開し、デバイスを右クリックして、[プロパティ]を選択します。

[プロパティ]ウィンドウの[ポリシー]タブを選択します。 Windowsでは、ハードウェアの安全な取り外し通知アイコンを使用せずにUSBデバイスを安全に取り外すことができると表示されているので、安全に取り外すことなくUSBデバイスを取り外すことができます。そんなに早くない。

データ破損の危険

上記のWindowsダイアログは誤解を招くものです。データの書き込み中にUSBデバイスを取り外すと(たとえば、ファイルの移動中やファイルの保存中に)、データが破損する可能性があります。どのオプションを使用する場合でも、プラグを抜く前にUSBデバイスが使用中でないことを確認する必要があります。一部のUSBスティックには、使用中に点滅するライトが付いている場合があります。

ただし、USBデバイスが使用されていないように見えても、まだ使用されている可能性があります。バックグラウンドのプログラムがドライブに書き込んでいる可能性があるため、ドライブを取り外した場合にデータが破損する可能性があります。 USBスティックが使用されていないように見える場合は、データの破損を起こさずにUSBスティックを取り外すことができます。ただし、安全のために、ハードウェアの安全な取り外しオプションを使用することをお勧めします。デバイスをイジェクトすると、Windowsは安全に取り外せるタイミングを通知し、すべてのプログラムがデバイスで確実に実行されるようにします。書き込みキャッシュ

[パフォーマンスの向上]オプションを選択すると、WindowsはデータをUSBデバイスにすぐに書き込む代わりにキャッシュします。これにより、デバイスのパフォーマンスが向上します。ただし、ハードウェアの安全な取り外しオプションを使用せずにUSBデバイスを取り外すと、データが破損する可能性が高くなります。キャッシュが有効になっている場合、WindowsはデータをUSBデバイスにすぐには書き込みません。データがデバイスに書き込まれているように見え、すべてのファイルの進行状況ダイアログが閉じている場合でも、データはシステムにキャッシュされるだけです。

デバイスをイジェクトすると、Windowsは書き込みキャッシュをディスクにフラッシュし、ドライブを安全に取り外すことができることを通知する前に、必要な変更がすべて行われるようにします。最終的には、使用するオプションに関係なく、ハードウェアの安全な取り外しアイコンを使用して、デバイスを取り外す前にデバイスをイジェクトする必要があります。コンピュータウィンドウで右クリックして、[取り出し]を選択することもできます。 Windowsは、デバイスを安全に取り外せる時期を通知し、データの破損による変更を排除します。

このアドバイスはWindowsだけに当てはまるわけではありません。Linuxを使用している場合は、USBデバイスを取り外す前に、ファイルマネージャの[取り出し]オプションを使用する必要があります。 Mac OS Xについても同様です。

8

一般に、コンピューターがUSBドライブに書き込んでいるときに、安全に取り外さずに引き出した場合、ファイルシステムまたはファイルが破損する危険があります。

FAT32

次に、Windowsのデフォルト設定を使用するFAT32ディスクがある場合、Windowsは書き込みをキャッシュしないため、書き込みが行われていないときにドライブを削除できます。

ただし、書き込みキャッシュを有効にすることでFAT32のパフォーマンスを向上させることができます。ただし、ドライブを安全に取り外す必要があるか、そうでなければすべてのデータがディスクに書き込まれるわけではありません。

enter image description here

NTFS

また、NTFSを使用する場合、それはジャーナリングファイルシステムであるため、ドライブをヤンクしてファイルシステムを破壊することはできません。ただし、これを行うと、ファイルが失われたり破損したりします。

少なくともNTFSの観点からは、サプライズを削除しても破損は発生しません。ファイルシステムのデータ構造は、ドライブをコンピューターから取り外したときとは無関係に、そのまま残ります(または少なくとも変更ジャーナルから修復できます)。したがって、ファイルシステムの観点からは、答えは「先に進み、いつでもドライブをヤンクしてください!」です。

NTFSはジャーナリングファイルシステムであるため、ファイルの追跡に使用される内部データ構造を自動修復できるため、ドライブ自体の論理的な整合性が維持されます。ファイルは最終的なサイズに正しく設定されており、そのディレクトリエントリは適切にリンクされています。しかし、ファイルに書き込んだデータは?それは決してそれを作りませんでした。

NTFSは堅牢であり、突然の削除から回復できますが、その堅牢性は失われたデータの内部整合性には及びません。

- Raymond Chen

USBフラッシュドライブを「安全に」イジェクトすると、取り外しても安全であると通知されるまで数秒かかることがあることに気づいたことがありますか。そしてこの間、ディスクはそのアクティビティライトを点滅させ続けますか?

私はこれを頻繁に目にしますが、それだけでも、誤って削除してしまったときにデータを失わないように見えても、ディスクを削除する危険を冒さないようにするのに十分です。

何が起こっているのかについてもう少し背景:

ディスクが破損している可能性があります。

他のものはすでにそれらをかなりよく説明しています、特にスーパーキャットによるものはフラッシュドライブにとってかなり重要です。

考えられるプログラムの問題。

これは、ディスク上でファイルを開いているプログラムが、突然ファイルにアクセスできなくなった場合に十分に対応できない場合です。これらのプログラムは、どれだけうまく開発されたかに応じて、クラッシュまたはフリーズする可能性があります。

したがって、「ハードウェアを安全に削除する」コマンドを使用すると、オペレーティングシステムで、これらのプログラムにディスクを手放すように求めるプロセスが開始されます。すべてのプログラムが解放されたら、ディスクを安全に切断できるようになりました。

ただし、ディスクを解放しないプログラムが実行されている場合は、そのように通知され、ディスクの使用を停止してディスク上の両方のデータの破損を防ぐようにそのプログラムを閉じるオプションがあります。お使いのコンピュータ上のプログラムの問題。

キャッシュとディスク破損の背景がさらに増えます

ファイルを格納するディスクは、インデックスを持つライブラリのように機能します。課題は、インデックスに含まれるブック(ファイル)との同期を保つ必要があることです。ディスク上のファイルを追加/削除するときは、そのインデックス(つまり、ディレクトリ)も更新する必要があります。これはすべていくつかのステップで行われ、ディスクを途中でヤンクするとディスク構造が破損します(ディスク構造を特定して修復するには、「chkdisk」などのツールが役立ちます)。

ただし、ディレクトリを常に最新の状態に保つには、多くの記述と時間が必要です。したがって、ディスクに100個のファイルを書き込む場合、オペレーティングシステム(Windowsなど)は、各ファイルに続いて(多くの場合同じ)ディレクトリの更新を行わず、最初に100個のファイルのデータをディスクに書き込むことにより、この操作を最適化します。 、更新されたディレクトリを一度に書き込みます。

このような最適化により、ファイルのコピー(および削除)がはるかに高速になり、最新のオペレーティングシステムでは、ディレクトリの更新を可能な限り遅らせて、コンピューターをさらに高速化する傾向があります。

つまり、オペレーティングシステムは、ローカルメモリ(RAMまたは内部ハードディスク、通常はUSB接続よりも高速です)にのみ正しいディレクトリを保持します。これは他の人が言うキャッシングです:より高速なアクセスのためにデータを別の場所に保持します。

しかし、コンピュータ全体で電源障害が発生した場合はどうなりますか?それでも、電源が再びオンになるとすぐに回復して、ディレクトリをそのまま維持する方法があります(たとえば、「ジャーナリング」を使用して)。もちろん、これは、ディレクトリがキャッシュされたディスクが電源が戻った後もまだ存在している場合にのみ機能します。これは通常のケースなので、ここでは何も心配する必要はありません。

ただし、単にディスクを取り外し、オペレーティングシステムがキャッシュされたディレクトリをディスクに書き戻すように指定しないと、これらすべての保護手段は機能しません。

したがって、ディスクを削除する予定であることをオペレーティングシステム(および実行するプログラム)に通知します。このプロセスは「アンマウント」とも呼ばれ、キャッシュされたすべてのデータをディスクに書き込み、それ以降のアクセスを停止します。

3
SuperTempel

フラッシュは1のみを書き込むことができ、0を書き込むことはできません。ブロック全体を消去できます(ゼロに設定)。ほとんどのフラッシュメディアは Wear Leveling を使用するため、「削除対象」リストにブロックを追加するだけで、代わりに別のブロックを使用します。 USBメディアのコントローラーは、他に何もする必要がないときに、「削除予定」リストのブロックの消去を開始します。ブロックの消去中に電源を接続すると、ブロックが未定義の状態になる可能性があります。

1
frog32

Windows PCからUSBメディアを安全に削除する理由は何ですか?

この機能は、リムーバブルメディア用です。つまり、USB、FireWireなどを介して接続されているメディアは、いつでも切断できます。

ドライブにアクセスして、要求に応じてすべてのデータをドライブに書き込むと、ドライブの負荷が大きくなり、パフォーマンスが低下し、摩耗が増加します。パフォーマンスを向上させ、摩耗を減らすために、Windowsは一度に大量のデータを書き込むために cache データを使用できます。それは、旅の価値を高めるために十分な用事があるまで、町の反対側への旅行を遅らせるようなものです。

キャッシュの問題は、書き込み要求が行われてからWindowsがキャッシュをディスクに「フラッシュ」する(実際に書き込みを実行する)までの間にドライブが取り外された場合、そのデータは書き込まれないことです。これにより、データが失われ、場合によっては破損することもあります。

リムーバブルボリュームを「イジェクト」することで、Windowsにキャッシュをフラッシュし、待機しているデータを書き込むように指示します。これにより、ドライブを安全に取り外すことができます。

私がRushにいるときは、システムトレイの安全な取り外しアイコンを右クリックしてこのルートを介してプラグを抜かずに、USBペンドライブまたはUSBケーブルをデスクトップPCまたはラップトップの外付けハードドライブから自動的に引き抜きます。これまでのところ、私が「ラッシュになって」いるたびに、不都合なことは何も起こりませんでした。

これは主に、Microsoftが愚かではないためです(ここでは議論しません…)彼らは人々が余計な仕事をするのが好きではないことを知っています。したがって、リムーバブルメディアを初めてシステムにプラグインするとき、Windowsがそのためのドライバーをインストールするとき、構成の一部は、「クイックリムーバル」に設定することです。

Device ManagerPoliciesタブのPropertiesダイアログドライブの種類に応じて、ドライブの構成を選択して、ドライブを迅速な取り外しまたはより高いパフォーマンスで構成するか、書き込みキャッシュを有効または無効にすることができます。

書き込みキャッシュを有効にするか、より優れたパフォーマンスを選択すると、Windowsは書き込み要求をキューに入れ、パフォーマンスを向上させ、摩耗を減らしますが、データ損失の可能性も高まるため、ボリュームを削除する前にボリュームを排出する必要があります。書き込みキャッシュを無効にするか、クイックリムーバルを選択すると、Windowsはすべてを直ちにディスクに書き込むため、パフォーマンスが低下し、摩耗が増加しますが、ドライブを取り外すだけで問題ありません。

Windowsはリムーバブルメディアをデフォルトでクイックリムーバルに設定しているため、ほとんどの場合、最初にイジェクトせずにプラグを抜いて問題が発生することはほとんどありません。


以下のスクリーンショットは、さまざまなメディアのデフォルトのドライブポリシーを示しています。注目すべきいくつかの興味深い点があります。

内蔵ハードドライブは書き込みキャッシュを使用するように設定されています(図1)。ドライブは永続的なフィクスチャであると想定されているため、これは理にかなっています。そのため、通常、書き込み要求とキャッシュフラッシュの間の短期間にドライブが使用できなくなることはありません。

USBフラッシュドライブは、すばやく取り外しできるように設定されています(図2)。簡単に取り外せるので便利です。

USBメモリカードは、簡単に取り外せるように構成されています(図3)。 USBフラッシュドライブ(または他のUSBドライブ)と本質的に違いがないため、これは論理的です。興味深いのは、内蔵メモリカードリーダーもクイック取り外しに設定されていることです(図4)。リーダー自体はラップトップに組み込まれているため、常に存在しますが、カードは削除できるため、デフォルトでクイックリムーバルになります。 (これはフロッピードライブでも同じです。ドライブ内のディスクを取り外すことができるため、キャッシュはありません。)

さらに興味深いのは、外付けUSBハードドライブ(図5)と、少し回転するハードドライブを搭載したiPod mini(図6)です。これらは実際のハードドライブであり、フラッシュドライブではありませんが、取り外し可能であるため、デフォルトでクイックリムーバルになります。この場合も、データがディスクに書き込まれる前にプラグを抜くことができるため、これは理にかなっています。

これを実行しないと、USBメディアの情報を本当に失う可能性がありますか?

(非フラッシュではなく)コンピュータから取り出したときにusbメディアがまだフラッシュしている場合、そのような情報を失う脆弱性[シック]は大幅に増加しますか?

はい。問題は、ドライブがクイック取り外しに設定されていても、すぐに取り外しても安全ではないことです。 Windowsが書き込みをただちに実行するからといって、書き込みがすぐに実行されるとは限りません。

フラッシュドライブやメモリカードなどのほとんどのリムーバブルメディアは、ハードドライブよりもはるかに低速です。したがって、Windowsは、要求された直後に書き込みを開始しますが、データが実際に書き込まれるまでには通常、少し時間がかかります。書き込み/コピー/などでも。書き込みの進行状況を示すダイアログボックスが消え、ドライブはまだしばらくの間書き込みを続けている可能性があります。独自のドライブアクティビティLEDがある場合は、これを確認できます。メディアをすぐに削除するのは安全ではありません。 LEDを見て、点滅が完全に停止するまで待ちます。


安全性を高めるために、 Sync のようなプログラムを使用して、Windowsにキャッシュをフラッシュするように指示できます。基本的に、安全な取り外し機能を使用する場合とまったく同じですが、デスクトップにショートカットを作成してリムーバブルドライブの特定のドライブ文字で実行すると、もう少し便利になる場合があります。あまり聞こえない5〜10秒節約できますが、HCIでは巨大なバリアです。さらに優れているのは、キャッシュをフラッシュするだけで、実際にはドライブを排出しないことです。そのため、ドライブを忘れて何かを突然覚えた場合でも、ドライブはまだマウントされており、使用できます。ホットキーを割り当ててキャッシュをフラッシュし、キーストロークで取り外しても安全になるため、これはさらに便利になります。


図1:内部HDDポリシー

Internal HDD policy

図2:USBフラッシュドライブポリシー

USB flash-drive policy

図3:内部メモリカードリーダーポリシー

Internal memory-card reader policy

図4:USBメモリカードリーダーポリシー

USB memory-card reader policy

図5:外付けHDDポリシー

External HDD policy

図6:iPod(mini)HDD

iPod mini HDD policy

1
Synetech