古いSSDが死んでから、新しいSSDを受け取りました。このIntel 320 SSDはTRIMをサポートしています。テストのために、私のディーラーはWindowsをインストールしましたが、これを取り除き、Kubuntuをインストールしたいと思います。
「安全なワイプ」である必要はなく、最も健全な方法でディスクを空にするだけです。 dd if=/dev/zero of=/dev/sda
はブロックをゼロで埋め、それによって別の書き込みを行うと考えています(間違っている場合は修正してください)。
私は答えを見ました TRIMを有効にする方法 ですが、ディスクを消去するのではなく、空のブロックをクリアするのに適しているようです。
hdparm
はそれを行うプログラムのようですが、ディスクをクリアするかどうかはわかりませんORは空のブロックを消去します。マニュアルページから:
--trim-sector-ranges For Solid State Drives (SSDs). EXCEPTIONALLY DANGEROUS. DO NOT USE THIS OPTION!! Tells the drive firmware to discard unneeded data sectors, destroying any data that may have been present within them. This makes those sectors available for immediate use by the firmware's garbage collection mechanism, to improve scheduling for wear-leveling of the flash media. This option expects one or more sector range pairs immediately after the option: an LBA starting address, a colon, and a sector count, with no intervening spaces. EXCEPTIONALLY DANGEROUS. DO NOT USE THIS OPTION!!
E.g. hdparm --trim-sector-ranges 1000:4 7894:16 /dev/sdz
TRIMを使用してすべてのブロックを空として表示するにはどうすればよいですか?
ドライブの security erase 機能を使用する必要があります。
ドライブのセキュリティがフリーズしていないことを確認してください。そうである場合は、コンピューターを一時停止および再開すると役立つ場合があります。
$ Sudo hdparm -I /dev/sdX | grep frozen
not frozen
(フィルター処理された)コマンド出力は、このドライブが「凍結されていない」ことを意味し、続行できます。
ユーザーパスワードを設定(このパスワードもクリアされます。正確な選択は重要ではありません)。
Sudo hdparm --user-master u --security-set-pass Eins /dev/sdX
ATA Secure Eraseコマンドを発行する
Sudo hdparm --user-master u --security-erase Eins /dev/sdX
注:
/dev/sdX
は、消去するブロックデバイスとしてのSSDです。Eins
は、この例で選択したパスワードです。トラブルシューティングを含む詳細な手順については、Linuxカーネルwikiの ATA Secure Eraseの記事 を参照してください。
util-linux 2.23はblkdiscard
を提供します。これはデータを安全に消去せずに破棄します。私はテストしました:SATAとmmcblkで動作しますが、USBでは動作しません。
blkdiscard(8)
のマニュアルページからの抜粋:
名前
blkdiscard-デバイス上のセクターを破棄する
あらすじ
blkdiscard [-o offset] [-l length] [-s] [-v] device
記述
blkdiscardは、デバイスセクターを破棄するために使用されます。これは、ソリッドステートドライバー(SSD)およびシンプロビジョニングされたストレージに役立ちます。 fstrim(8)とは異なり、このコマンドはブロックデバイスで直接使用されます。
デフォルトでは、blkdiscardはデバイス上のすべてのブロックを破棄します。以下で説明するように、オプションを使用して、範囲またはサイズに基づいてこの動作を変更できます。
Device引数は、ブロックデバイスのパス名です。
警告:デバイス上の破棄された領域のすべてのデータが失われます!
このコマンドは、Ubuntu 15.04およびOpenSUSE 13.1以降に存在します(OpenSUSEにはUbuntuの2年先にあります)。
安全なワイプが不要な場合は、「ディスク全体を使用する」オプションと「クイックフォーマット」に相当するオプションを使用してkubuntuをインストールしないでください(正確な用語は今は思い出せません)
このようにして、ファイルアロケーションテーブルを捨てると、ドライブは上書きのために事実上空になります。実際に空にする必要はありません。
ドライブにLinuxファイルステムがある場合、fstrim
を使用できます。デフォルトでは、最近のUbuntuは次のベンダーのドライブでfstrim
を実行します。
if [ -z "$NO_MODEL_CHECK" ]; then
if ! contains "$HDPARM" "Intel" && \
! contains "$HDPARM" "INTEL" && \
! contains "$HDPARM" "Samsung" && \
! contains "$HDPARM" "SAMSUNG" && \
! contains "$HDPARM" "OCZ" && \
! contains "$HDPARM" "SanDisk" && \
! contains "$HDPARM" "Patriot"; then
#echo "device $DEV is not a drive that is known-safe for trimming"
continue
週に一度。
質問に対する答えの1つは、システムを起動して1週間待つことです!