最近、PCをリサイクルに出す機会がありました。
ディスクの中身を消去して良いとのことだったため、ディスク消去ツールを探してみたところ、shredos.x86_64がありました。
https://github.com/PartialVolume/shredos.x86_64
そこで、使ってみた時のメモを残します。
目次
環境
- 削除対象PC
- Windows10
- やや古いマシン
- Windows10
- 空のUSBメモリ
- ShredOS x86_64 v2025.11_29_x86-64_0.40
- .img / BIOS+UEFI USB / minimum 2GB RAM / writable
- macでUSBメモリに書き込んで、Windows10のマシンでUSBブート
macにて、ShredOS x86_64をUSBメモリへ書き込み
USBメモリをmacへ接続し、 diskutil list でUSBメモリが認識されることを確認します。今回は disk5 として認識されていました。
% diskutil list ... /dev/disk5 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: FDisk_partition_scheme *62.0 GB disk5 1: Windows_NTFS KIOXIA 62.0 GB disk5s1
続いてイメージをダウンロードします。
今回はmacでUSBへ書き込むことから x86-64 .img / BIOS+UEFI USB / minimum 2GB RAM / writable である shredos-2025.11_29_x86-64_v0.40_20260402.img をダウンロードしました。
なお、ShredOSのREADMEには圧縮されているような記述もありましたが、今回は img ファイルそのものをダウンロードできました。
ダウンロード後、ファイルのチェックサムを確認します。
チェックサムはReleaseページの内容と一致していたため、良さそうでした。
% shasum /path/to/shredos-2025.11_29_x86-64_v0.40_20260402.img fba1bc6c383923a3e70ab741924079752ecaa0b0 /path/to/shredos-2025.11_29_x86-64_v0.40_20260402.img
続いて dd でUSBメモリへ書き込もうとしましたが、busyでした。
% sudo dd if=/path/to/shredos-2025.11_29_x86-64_v0.40_20260402.img of=/dev/disk5 Password: dd: /dev/disk5: Resource busy
そこで、 diskutil unmountDisk でアンマウントします。
% diskutil unmountDisk /dev/disk5 Unmount of all volumes on disk5 was successful
再度 dd で書き込んだところ、書き込みができました。
% sudo dd if=/path/to/shredos-2025.11_29_x86-64_v0.40_20260402.img of=/dev/disk5 732159+1 records in 732159+1 records out 374865664 bytes transferred in 110.527438 secs (3391607 bytes/sec)
念のため、 sync もしておきます。
% sync
書き込みが完了したので、 diskutil list で状況を確認します。Typeが変わっているなど、書き込みは成功したようです。
% diskutil list
...
/dev/disk5 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *62.0 GB disk5
1: Windows_FAT_32 NO NAME 374.2 MB disk5s1
(free space) 61.6 GB -
続いて、USBメモリを取り外すために、eject します。
% diskutil eject /dev/disk5 Disk /dev/disk5 ejected
念のため、 diskutil list して、リストからなくなったことを確認します。
% diskutil list
最後に、USBメモリを取り外します。
ShredOS x86_64によるディスク消去
WindowsマシンにUSBメモリを接続し、USBメモリからブートします。
ALT-F2 でターミナル入力できるようにします。
続いて、データの消去を行います。まずは -s 2 で試してみます。なお、namespaceは1つしかなかったため、 -n 1 としています。
実行したところ、エラーで消去できなかったようです。
$ nvme format /dev/nvme0 -s 2 -n 1 ... NVMe status: Invalid Field in Command A reserved coded value or unsupported value in a defined field(0x2)
暗号消去に対応しているか確認したところ、何も表示されませんでした。今回のWindows PCのディスクが対応していないようです。
$ nvme id-ctrl /dev/nvme0 | grep -i crypto
そのため、 -s 1 (全ユーザーデータの削除) とすることにしました。
$ nvme format /dev/nvme0 -s 1 -n 1
時間もかからずに終了しました。
sanitize も実行しようと考えましたが、対応していなかったので実行できませんでした。
これで作業は完了です。 poweroff します。
$ poweroff
電源が落ちた後、USBメモリを抜きました。