Windows Tips

【Windows】廃棄するストレージのデータを SDelete コマンドで完全に消去する

投稿日:2019年3月27日 更新日:

1. SDelete とは?

SDeleteWindows Sysinternals が提供しているツールの1つであり、基本的にはファイルやフォルダを削除するコマンドラインツールです。

※ Windows Sysinternals とは、Windows トラブルシューティング ツールの総称です。いろいろと便利な Windows用ツールが提供されています。

主な用途は以下の2つです。

1. ファイルやフォルダを削除する。

  • 通常の「ファイルの削除」という操作は、データそのものを削除するのではなく、データの存在している位置情報をクリアしているに過ぎません。そのため、そのストレージが第三者の手に渡った場合、割と簡単に元のデータが見られてしまいます。
  • 一方 sdelete の削除処理では、削除対象となるファイルまたはフォルダが配置されていたストレージ上の領域を 別の値で上書き する処理も行ってくれます。

2. 指定したドライブの空き領域を 0 で上書きする。

  • 「空き領域」には過去に削除したファイルのデータが残っている可能性があります。そうした領域を 0 で上書きする(-z オプション)ことによって、第三者がそのストレージを解析して残っているデータを抽出することを防ぎます。
  • 空き領域に対する操作なので、既存のデータが壊されることはありません。
  • あらかじめドライブ上のファイル・フォルダを削除した上で sdelete を実行すれば、今まで存在していたデータが占有していた領域全てを 0 で上書きしてくれます(-z オプション)。
  • ストレージを捨てる直前にこの操作を行うことで、そのストレージから過去のデータが読み出される可能性は著しく下がります。

本ページでは 2 の使い方について説明します。ストレージデバイスを捨てる前に、ちゃんとデータを消しておこうという趣旨で使います。

参考

2. SDelete の導入

(1) SDelete のページのダウンロードリンクをクリックします。

SDelete.zip ファイルがダウンロードされます。

(2) SDelete.zip ファイルを解凍してできた SDelete フォルダを任意のパスに配置します。

SDeleteフォルダの内容
SDeleteフォルダの内容

sdelete.exesdelete64.exe の2つの実行ファイルが入っています。64bit の Windows ならどちらを使ってもよいでしょう。

また、これらのファイルを C:\Windows\System32 以下に貼り付ければパスが通るので、コマンドプロンプトもしくは PowerShell において、どこからでもパスなしで実行することができます。

3. SDelete で USBメモリを完全に消去する手順

対象とするストレージは、HDD・SSD など何でもよいのですが、ここでは USBメモリを想定します。

ここで説明する作業を行うことによってUSBメモリ内のデータ全て 0 で上書きし、その上で捨てるというシナリオです。

尚、本記事の操作は How to zero out a storage disk using SDELETE in Windows – YouTube を大いに参考にしていますので、興味のある人はこちらも参照してください。

1. USBメモリを Windows パソコンに接続する

まずは、USBメモリを Windows パソコンに接続します。

2. USBメモリの「ディスクの番号」を調べる

後の操作で必要になるため、USBメモリを表す「ディスクの番号」を調べます。

(1) コマンドプロンプトまたは PowerShell を管理者権限で立ち上げます。

(2) 以下のコマンドを入力して実行します。

wmic diskdrive list brief

その PC に接続されているストレージが表示されるので、その中から今回対象とする USBメモリを探し、DeviceID列 の末尾の番号を確認します。後でこの番号を使います。

DeviceID の末尾の番号を確認します
DeviceID の末尾の番号を確認します
(相当古いUSBメモリです)

この画像の場合は、2行目が USBメモリなので「1」となります。

3. USBメモリ上の「ボリューム(または「パーティション」)」を削除する

ここで、USBメモリ上の「ボリューム(またはパーティション)」を削除します。
この操作により、USBメモリ上のデータは全て削除された状態になり、これらの領域がそのまま sdelete が処理の対象とする「空き領域」となります。

ここでは diskpart コマンドを利用してこれらの処理を行うので、引き続きコマンドプロンプトまたは PowerShell 上での作業になります。(「ディスクの管理」ツールを使って行うこともできます)

diskpart コマンドを開始します。

diskpart

ボリュームを一覧表示します。

DISKPART> list volume

以下のように表示されるので、USBメモリに該当する行の一番左にある「Volume 3」のところを見ます。この「3」がボリューム番号であることが分かります。

ボリューム一覧
ボリューム一覧

この 3番のボリュームを選択します。

DISKPART> select volume 3

ここでもう一度、ボリューム一覧表示すると、選択されているボリュームの一番左に「*」が表示されるので、念の為確認しておきます。

DISKPART> list volume

このボリュームを削除します。

DISKPART> delete volume

更にもう一度、ボリューム一覧表示して、削除したボリュームの状況を見ておきます。

DISKPART> list volume

以下が実際の画面です。Volume 3 は削除されたはずですが、まだ表示はされています(利用不可とはなっています)。

Volume 3 が削除された後
Volume 3 が削除された後

ボリュームが削除できなかった場合

ボリュームの削除でエラーが出た場合は(実際ありました)、以下の手順でパーティションを削除します。

ディスク(接続されたストレージ)を一覧表示します。

DISKPART> list disk

以下が実際に実行した画面です。USBメモリに該当する行のディスク番号を確認します。

ディスク一覧
ディスク一覧

USBメモリに該当するディスクを選択します。

先程ディスク番号が「1」だと分かったので、「1」を指定して以下のコマンドを実行します。

DISKPART> select disk 1

以下のコマンドを実行して、このディスクのパーティションを含めた全ての情報を消去します。

DISKPART> clean

4. sdelete コマンドで空き領域を 0 で上書きします

ここまでの操作で、USBメモリ内のデータは表面上なくなり「空き領域」となりました(実際には、まだデータが残っています)。

まず、sdelete コマンドがあるフォルダに移動します(自分の配置したフォルダに移動してください)。

cd Path\To\Sdelete-Folder

sdelete コマンドを実行して、「空き領域(= 全領域)」を 0 で上書きします。

この時、一番うしろの引数として、最初に確認した「ディスク番号」を指定します。

.\sdelete -z 1
  • sdelete の -z オプションは、ドライブレター(E: など)を指定することもできますが、この時点でボリューム(もしくはパーティション)が削除されているので、ディスク番号で指定する必要があります。
  • -p オプションで上書き回数を指定することもできます(デフォルトは1回)。

5. USBメモリ内のデータを確認する

バイナリエディタと呼ばれるツールで、USBメモリ内の状況を確認します。

ここでは、HxD を使います。

(1) HxD を管理者権限で起動します。

(2) [Tools]メニュー – [Open disk…] を選択します。

[Tools] - [Open disk...]
[Tools] – [Open disk…]

(3) 目的のストレージ(ディスク)を選択して [OK]ボタンを押します。

ストレージの状況によって、[Logical disks] 側で選択するのか [Physical disks] 側で選択するのか違ってきます。

目的のストレージを選択します
目的のストレージを選択します

(4) USBメモリ内のデータを最初から見ていき、0 で上書きされているか確認します。

スクロールして下まで見てみましょう。0 で上書きされていれば OK です。
これなら安心してUSBメモリを捨てることができます。

これでも元のデータが読み込まれるのではないかと不安な場合は、sdelete コマンドの -p オプションで上書き回数を指定しましょう。デフォルトは1回になっています。

USBメモリ内が 0 で上書きされているか確認します
USBメモリ内が 0 で上書きされているか確認します

参考

📂-Windows Tips

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Windows 10 で「Web ブラウザ」の「既定のアプリ」を変更する方法

Windows 10 で「Web ブラウザ」の「既定のアプリ」を変更する手順を説明します。 [設定] – [システム] – [既定のアプリ] の画面で簡単に変更できそうですが、 …

スタートメニューにテキストファイルは置けません

Windows 10 のスタートメニューには、テキストファイルをピン留めすることができません。 「Windowsキーだけでアクセスできる」というかなり優遇されたエリア(しかも結構広い!)ですが、ここに …

Windows

Alt + Tab キーでEdgeの個別タブを切り替え候補にしない設定手順(Windows 10 20H2)

目次1. はじめに2. 20H2 で Alt + Tab の何が変わったのか従来20H2 での変更3. 以前の挙動に戻す4. 問題点5. おわりに 1. はじめに Windows 10 バージョン 2 …

雑記

学校で受けたテストをもう一度解く

学校で受けたテストをもう一度解く方法について書きました。

Creators Update 導入後に、「ファイル名を指定して実行」で履歴が表示されなくなった場合の対処法

Windows 10 Creators Update 導入後、「ファイル名を指定して実行」で履歴が表示されなくなった場合の対処法を紹介します。 目次1. 状況2. 対処法3. まとめ 1. 状況 [フ …