Linux Tips | |
ファイルを完全に消去するには 北浦訓行 |
ハードディスクやMO、FDなどの記録メディアを破棄したり譲渡する場合、記録されているデータを完全に消去することが望ましい。特に、個人情報や社外秘のデータを記録したことのあるディスクの場合、完全な消去は必須だ。
rmコマンドでファイルを消去すれば、見かけ上そのファイルの内容を表示することはできなくなる。しかし、rmコマンドは該当ファイルのiノードを解放するだけで、データの内容自体はディスク上に残る。従って、ddコマンドなどによって直接データを取り出すことも可能であり、データが流出する可能性は否定できない。
Linuxでファイルを完全に消去するには、shredコマンドを使う。shredは、ファイルを特別なパターンで繰り返し上書きすることによりデータの復旧をより困難にするツールで、GNU core utilsに含まれている。
ファイルを削除する際は、以下のように--removeオプション(-uでも可)を付けてファイルを指定する。
$ shred --remove foo.txt |
--removeオプションを付けないでファイルを指定すると、ファイル名は残る(lsコマンドなどで表示される)が、内容は破壊される。
また、ハードディスクなどのデバイスの内容を丸ごと消去する際は、rootで、
# shred -n 3 -v /dev/hdb |
のようにオプションとデバイスを指定する。上記の場合、/dev/hdbに対してランダムな書き込みを3回繰り返す(-n -3)。-vは、進ちょく状況を表示するオプションだ。
注:ここではランダムな値を3回書き込むように設定したが、3回であれば万全という意味ではない。あくまでも目安として考えていただきたい。 |
これくらいの消去でもそれなりの時間がかかるが、完ぺきを期すなら-n −3ではなく-zオプションを使う。-zオプションはランダムな書き込みを25回行い、最後にNULL(0)を書き込むため相当な時間が必要になる。
# shred -z -v /dev/hdb |
ランダムなデータを書き込む理由は、データを読み取られる可能性があるからだ。例えば、
# dd if=/dev/zero of=/dev/hdb |
などとして、ハードディスク全体に0を書き込むと、それをPCに接続してもデータを復元することはできない。しかし、特別な装置を使うと「0に0を上書きした場合」や「1に0を上書きした場合」の違いをアナログ的に読み取ることができるため、データを復元できる可能性がある。そのような装置でも読み取り不可能にするために、ランダムな値を複数回書き込むのである。
ちなみに、ハードディスクが1台しか搭載されていないPCのハードディスク内容を消去するときは、KNOPPIXを使うと便利だ。KNOPPIXをコンソールモードで起動するにはの方法でKNOPPIXをコンソールモードで起動して、shredの消去先として/dev/hdaを指定すればいい。
Linux Tips Index |
Linux Squareフォーラム Linux Tipsカテゴリ別インデックス |
|
- 【 pidof 】コマンド――コマンド名からプロセスIDを探す (2017/7/27)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、コマンド名からプロセスIDを探す「pidof」コマンドです。 - Linuxの「ジョブコントロール」をマスターしよう (2017/7/21)
今回は、コマンドライン環境でのジョブコントロールを試してみましょう。X環境を持たないサーバ管理やリモート接続時に役立つ操作です - 【 pidstat 】コマンド――プロセスのリソース使用量を表示する (2017/7/21)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、プロセスごとのCPUの使用率やI/Oデバイスの使用状況を表示する「pidstat」コマンドです。 - 【 iostat 】コマンド――I/Oデバイスの使用状況を表示する (2017/7/20)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、I/Oデバイスの使用状況を表示する「iostat」コマンドです。
|
|