Windowsには、要らなくなったデータを一時的に保存している「ごみ箱」という場所があります。
ファイルやフォルダに対して「削除」をすると、一時的に「ごみ箱」へ移動されます。本当のデータの削除をしたい場合は、このごみ箱を「空」にする必要があります。その前であれば、データは元の場所へ復元可能です。言い換えれば、ごみ箱という「フォルダ」の中に入れているだけなので、復元も容易なのです。
では、その「フォルダ」とやらはどこにあるのでしょうか。普段、デスクトップでしか見かけない「ごみ箱」の本体はどこにあるのでしょう。
今回は、このごみ箱の正体を暴いてみる記事です。気になる方はどうぞお付き合いください。ついでにごみ箱の設定、例えば上限容量などの変更方法も一緒に解説します。
ごみ箱とは
Windowsにおける「ごみ箱」は、ファイル管理機能のひとつとして提供されています。
ディスク上で不要となったデータを削除すると、標準でこのごみ箱へ一時的に保存されます。
これは、ただ単に「ごみ箱」というフォルダへ入れているだけなので、「元に戻す」を実行すればファイルを復元することが可能です。「ごみ箱を空にする」機能を実行すると、データはコンピューターから完全に削除されます。この機能を実行すると、復元は容易にできなくなりますので注意。
「元に戻す」を実行すると、削除した場所へ復元されます。復元場所を変えたい場合は、ごみ箱の中で復元したいデータを選択し、ドラック&ドロップにて移動・復元させることで可能になります。また、ディスク上から削除を実行した直後に「Ctrl」+「Z」キーを同時押しすることで動作をひとつ戻し削除をキャンセルさせることができます。
ごみ箱の本体
設定
Windowsのごみ箱は「$Recycle.Bin」という特殊なフォルダが本体になります。
(※XPでは「Recycled」という名前ですが、今回の記事ではWindows Visa以降のOSで解説します)
このフォルダはシステムによって厳重に保護されており、通常のファイル権限では見ることもできません。
そこで、下記の操作をして、実際に見えるようにしてみます。(Windows8の場合です)
- エクスプローラーを開き、左上のメニューから「表示」→「オプション」を選択します。
(※エクスプローラーがよくわからない場合は、何でも良いのでフォルダなどを開けばOKです。開いた時に表示される画面がエクスプローラーになります。) - 「フォルダー オプション」が開いたら、「表示」タブを選び [詳細設定] にある
- 「隠しファイル、隠しフォルダー、および隠しドライブを表示する」にチェック
- 「保護されたオペレーティング システム ファイルを表示しない」のチェックを外す
Windows Vistaや7の場合は「整理」→「フォルダーと検索のオプション」を選びます。その後の操作は同じです。
「保護されたオペレーティング システム ファイルを表示しない」のチェックを外そうとすると、管理者権限を要求されます。それだけ重要な項目なので、用事が済んだら設定を戻しましょう。
実際に見てみる
以上の設定をしたら、Cドライブに行ってみましょう。
すると、隠しフォルダとして「$Recycle.Bin」が見えるようになります。これにアクセスしてみましょう。
ごみ箱というフォルダがあることが分かりました。これにアクセスするといつものごみ箱へアクセスできます。
この「$Recycle.Bin」というフォルダですが、Cドライブだけにあるわけではありません。
「$Recycle.Bin」は、各ドライブすべてに生成されます。同じくDやEドライブなどにもアクセスしてみてください。
このように、「$Recycle.Bin」というフォルダは各ドライブに自動生成されます。
データに対して削除を実行すると、削除したデータが保存されているドライブにある「$Recycle.Bin」へ移動されます。例えば、Dドライブにあるデータを削除すると、Dドライブにある「$Recycle.Bin」へ移動されます。削除やごみ箱からの復元が時間もかからず可能になっているのは、このようにドライブ間の移動がないからです。
ごみ箱は仮想的なフォルダ
ごみ箱というフォルダは仮想的なものです。各ドライブ内に保存されている「$Recycle.Bin」の中身を一括で読み込みまとめているのがデスクトップ上にある「ごみ箱」なのです。
▲それぞれのドライブの「$Recycle.Bin」に削除されたデータが保存されています。OSが提供する「ごみ箱」という機能は、それぞれの「$Recycle.Bin」をまとめあげる役割を持っています。ごみ箱という実体のあるフォルダはなく、あくまで仮想的なものなのです。(コントロールパネルなども同じく仮想的なものです)
USBフラッシュメモリやSDカードには「$Recycle.Bin」が生成されない
USBフラッシュメモリなどの記憶デバイスは、その中で削除を実行しようとるすと「完全に削除しますか」と聞かれます。ごみ箱にはいかず、完全削除のみ可能となっています。これは、「$Recycle.Bin」が自動生成されないからです。
そのため、USBフラッシュメモリなどに入っているデータの削除には十分気をつけてください。
「S-1-~」というフォルダは何?
他のユーザーが利用しているごみ箱データです。通常権限ではアクセスすらできないフォルダです。
やりようによってはもちろん確認することはできますが、アクセス権を奪取するともとの状態に戻せなかったりするのであまり無闇に弄らないよう注意してください。
実験
本当にドライブごとにデータが保存されているのかを確認してみます。
まず、Dドライブにある「テスト.zip」を作成します。大体50MBくらいです。
これを「削除」します。これでDドライブ内にある「$Recycle.Bin」へ移動されたはずです。ごみ箱という仮想的なフォルダには、CドライブでもDドライブでもすべてがまとめられ表示されているため、どちらでも「テスト.zip」が表示されます。(desktop.iniがCLSIDを指定しているため)
それでは確認しようがないので、Dドライブにあるごみ箱($Recycle.Bin内の「ごみ箱」)を「コピー」します。
それを「貼り付け」します。その際、「desktop.ini」の上書きを確認されます。上書きすると面倒なことになることもあるので、ここは「スキップ」を選びましょう。これでフォルダの認識を「ごみ箱」から「普通のフォルダ」へ変えさせることができます。「普通のフォルダ」として認識されているので、このままアクセスしてみます。すると、名前が変わっていますが先ほど削除されたzipファイルがそのまま保存されていることが確認できます。
次に、Cドライブの$Recycle.Binにあるごみ箱を、同じ操作でコピーと貼り付けします。
そしてアクセスしてみましょう。フォルダ構成の設定ファイルである「desktop.ini」しかなく、削除したzipファイルは確認できません。これで、削除したデータはデータのあったドライブ内にある「$Recycle.Bin」へ保存されることが分かりました。
ごみ箱の設定
ごみ箱には、保存容量の上限などを設定させることができます。
ごみ箱を右クリックして「プロパティ」を選択します。すると、「ごみ箱のプロパティ」が開きます。ここで、「$Recycle.Bin」が生成されているドライブと空き容量が確認できます。「カスタムサイズ」を調整することでごみ箱の上限を決めることができます。
因みに、ごみ箱へ移動させずその場でデータの完全削除を実行したい場合は「ごみ箱へにファイルを移動しないで、削除と同時にファイルを消去する」にチェックをいれます。
まとめ
いかがでしたか。いつも利用しているごみ箱、どのような仕組みになっているかお分かりになったでしょうか。
ごみ箱という実体のあるフォルダ(正確に言えばディレクトリ)はなく、あくまで仮想的なOSの"機能"のひとつに過ぎないことがお分かりになったでしょうか。ごみ箱は各ドライブに自動生成される「$Recycle.Bin」の中身をまとめる役割を持ち、不要なデータを管理しています。
各ドライブに作成されるので、削除によるドライブ間のデータ移動がなく、削除も復元も時間がかからず完了させることができるようになっています。
豆知識的なものであまり実践的なものではないですが、何かの為になれば幸いです。