現在のドキュメント(およびプログラムバージョン2.01):
-c
:空き領域をきれいにします。実行中のシステムで使用できるように、オプションの空き容量を指定します。
-z
:空き領域がゼロ(仮想ディスクの最適化に適しています)。
しかし、古いバージョンでは逆になりました:
-c
:空き領域がゼロ(仮想ディスクの最適化に適しています)。
-z
:空き領域をきれいにします。
しかし、彼らは何をしますか?
Cleanは、可能な限り最大のファイルを作成し、ランダムなデータで埋めてから、ゼロで埋めます。これはほとんどの人がワイピングと考えるものであり、やり過ぎです。
欠点は、仮想ディスクを使用する場合、または仮想マシン内で使用する場合、またはストレージスペースで実行する場合、基盤となるストレージシステムがリソースを割り当ててランダムデータを保持し、その後ゼロを保持することです。願わくば、基礎となるストレージシステムが、ドライブに割り当てられたすべてのスペースを再利用できることを認識できることを願っています。これらのセクターにはすべてゼロが含まれているからです。
-zゼロ:すべてのセクターにゼロを単に書き込みます。これは、多くの理由で必要なオプションです。
- ランダムなデータでの拭き取りはやり過ぎです(データの読み取りは実際には不可能です。つまり、顕微鏡では実現できませんが、一度に1ビットずつ)
- 一部のSSDは、セクターに0を書き込んでいることを検出でき、それを使用してセクターをフリーとしてマークできます(TRIMと同様)
- ほとんどの仮想ストレージシステム(VMWare、Hyper-V、Windows仮想ディスク、ストレージスペース)は、ゼロのセクター全体を書き込むことを認識し、基盤となるストレージファイルのスペースを再利用する機会を利用します。
- SSDは、最終的な目標が本質的には栄光のTRIMであることを認識せず、(仮想ディスクのように)既にゼロを含んでいるセクターをゼロ以外で埋めることを余儀なくされます。それはあなたのSSDにとってひどいです。
ソース:仮想ハードディスクをマウントし、両方のモードでsdeleteが実行したI / O操作を監視しました。
tl; dr:-z Zeroを使用します。より速く、より良く、より安全です。