shred

提供: セキュリティ
2014年12月24日 (水) 13:50時点におけるDaemon (トーク | 投稿記録)による版

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索
スポンサーリンク

shred とは、Linuxでファイルやディスクを完全に消去するためのコマンドです。

読み方

shred
しゅれっど

概要

shredを使う理由は、個人情報や社外秘のデータを記録しているディスクのデータを完全に消去するためです。HDDでは、ディスクのデータを削除しても、残留磁気によって復元することが可能かもしれません。そのため、何度もデータを書き込むことにより、復元を困難にします。

ただし、SSDでは、HDDとデータの書き込みの方式が異なるため、 shred による単体ファイルの削除は、効果をなさないでしょう。それは、SSDのコントローラーのウェアべリングの処理によって、同じメモリ素子にデータを書き込めないからです。

shred の英単語としての意味は以下の通りです。

名詞
一片、断片、破片
動詞
ずたずたに引き裂く、細かく切る、寸断する、ちぎる

インストール

おそらく、デフォルトでインストールされています。

使い方

コマンドラインオプション

Usage: shred [OPTION]... FILE...
Overwrite the specified FILE(s) repeatedly, in order to make it harder
for even very expensive hardware probing to recover the data.
 
Mandatory arguments to long options are mandatory for short options too.
  -f, --force    change permissions to allow writing if necessary
  -n, --iterations=N  overwrite N times instead of the default (3)
      --random-source=FILE  get random bytes from FILE
  -s, --size=N   shred this many bytes (suffixes like K, M, G accepted)
  -u, --remove   truncate and remove file after overwriting
  -v, --verbose  show progress
  -x, --exact    do not round file sizes up to the next full block;
                   this is the default for non-regular files
  -z, --zero     add a final overwrite with zeros to hide shredding
      --help     display this help and exit
      --version  output version information and exit
 
If FILE is -, shred standard output.
 
Delete FILE(s) if --remove (-u) is specified.  The default is not to remove
the files because it is common to operate on device files like /dev/hda,
and those files usually should not be removed.  When operating on regular
files, most people use the --remove option.
 
CAUTION: Note that shred relies on a very important assumption:
that the file system overwrites data in place.  This is the traditional
way to do things, but many modern file system designs do not satisfy this
assumption.  The following are examples of file systems on which shred is
not effective, or is not guaranteed to be effective in all file system modes:
 
* log-structured or journaled file systems, such as those supplied with
AIX and Solaris (and JFS, ReiserFS, XFS, Ext3, etc.)
 
* file systems that write redundant data and carry on even if some writes
fail, such as RAID-based file systems
 
* file systems that make snapshots, such as Network Appliance's NFS server
 
* file systems that cache in temporary locations, such as NFS
version 3 clients
 
* compressed file systems
 
In the case of ext3 file systems, the above disclaimer applies
(and shred is thus of limited effectiveness) only in data=journal mode,
which journals file data in addition to just metadata.  In both the
data=ordered (default) and data=writeback modes, shred works as usual.
Ext3 journaling modes can be changed by adding the data=something option
to the mount options for a particular file system in the /etc/fstab file,
as documented in the mount man page (man mount).
 
In addition, file system backups and remote mirrors may contain copies
of the file that cannot be removed, and that will allow a shredded file
to be recovered later.
 
Report shred bugs to bug-coreutils@gnu.org
GNU coreutils home page: <http://www.gnu.org/software/coreutils/>
General help using GNU software: <http://www.gnu.org/gethelp/>
Report shred translation bugs to <http://translationproject.org/team/>
For complete documentation, run: info coreutils 'shred invocation'

ディスクのデータの完全消去

ディスク全体を完全に消去する場合は、以下のコマンドを実行します。 3回、ランダムな書き込みます。

shred -n 3 -v /dev/sda

3回、ランダムな書き込みを行い、最後に0を書き込みます。

shred -z -n 3 -v /dev/sda

-z オプションを使用すると25回、ランダムな書き込みを行い、最後に 0 を書き込みます。より、完全を求める場合に使用してください。

shred -z -v /dev/sda

ファイルを完全に消去する

ファイルを完全に削除する場合は、以下の通りです。

shred --remove foo.txt

関連項目




スポンサーリンク