[Ilugc] One Day One GNU/Linux Command (SHRED)

  • From: sbharathi@xxxxxxxxxxxxx (Bharathi Subramanian)
  • Date: Mon Jun 23 09:54:15 2008

One Day One GNU/Linux Command
=============================

shred -- Overwrite/Delete a file securely.

Summary:

`shred' overwrite the specified devices/ files repeatedly and remove,
in order to make it harder for even very expensive hardware probing to
recover the data.

Normally when you remove a file (with `rm'), the data is not actually
destroyed.  Only the index listing where the file is stored is
destroyed, and the storage is made available for reuse. There are
undelete utilities that will attempt to reconstruct the index and can
bring the file back if the parts were not reused.

shred uses many overwrite passes, with the data patterns chosen to
maximize the damage they do to the old sensitive data.  While this
will work on floppies, the patterns are designed for best effect on
hard drives. For more details, see the source code and Peter Gutmann's
paper `Secure Deletion of Data from Magnetic and Solid-State Memory'.

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. It
is more reliable to shred a device than a file, since this bypasses
the problem of filesystem design mentioned above.

Example:

$ shred file -- Repeatedly overwrite the file content with random data.

$ shred -v file -- Show progress info.

$ shred -n 5 file -- Overwrite 5 times instead of the default is 25.

$ shred -x file -- Use exact size. Don't round of.

$ shred -z file -- At the end of shred, overwrite the file with zeros.

$ shred -u file -- Overwrite, Truncate and Remove the file.

$ shred -s 6K file -- Shred the first 6K bytes of the file.

Read: man shred

HTH :)
--
Bharathi S

Other related posts: