shred(1)


NAME

   shred - overwrite a file to hide its contents, and optionally delete it

SYNOPSIS

   shred [OPTION]... FILE...

DESCRIPTION

   Overwrite  the specified FILE(s) repeatedly, in order to make it harder
   for even very expensive hardware probing to recover the data.

   If FILE is -, shred standard output.

   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     truncate and remove file after overwriting

   --remove[=HOW]
          like -u but give control on HOW to delete;  See below

   -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

   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.  The optional
   HOW parameter indicates how to remove a directory  entry:  'unlink'  =>
   use  a  standard  unlink call.  'wipe' => also first obfuscate bytes in
   the name.  'wipesync' => also sync each obfuscated byte to  disk.   The
   default mode is 'wipesync', but note it can be expensive.

   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.

AUTHOR

   Written by Colin Plumb.

REPORTING BUGS

   GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
   Report shred translation bugs to <http://translationproject.org/team/>

COPYRIGHT

   Copyright  2016 Free Software Foundation, Inc.   License  GPLv3+:  GNU
   GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
   This  is  free  software:  you  are free to change and redistribute it.
   There is NO WARRANTY, to the extent permitted by law.

SEE ALSO

   Full documentation at: <http://www.gnu.org/software/coreutils/shred>
   or available locally via: info '(coreutils) shred invocation'


More Linux Commands

manpages/sleep.1.html
sleep(1) - delay for a specified amount of time (Man Page)
Pause for NUMBER seconds. SUFFIX may be s for seconds (the default), m for minutes, h for hours or d for days. Unlike most implementations that require NUMBER b

manpages/getgroups.2.html
getgroups(2) - get/set list of supplementary group IDs......
getgroups() returns the supplementary group IDs of the calling process in list. The argument size should be set to the maximum number of items that can be store

manpages/Tk_UnmapWindow.3.html
Tk_UnmapWindow(3) - map or unmap a window - Linux man page
These procedures may be used to map and unmap windows managed by Tk. Tk_MapWindow maps the window given by tkwin, and also creates an X window corresponding to

manpages/texi2roff.1.html
texi2roff(1) - convert Texinfo documents for formatting by t
Texi2roff translates the named files from the Texinfo macro language for TeX to the language accepted by troff(1). Files are read and processed in order. If no

manpages/munmap.2.html
munmap(2) - map or unmap files or devices into memory.......
mmap() creates a new mapping in the virtual address space of the calling process. The starting address for the new mapping is specified in addr. The length argu

manpages/cprojl.3.html
cprojl(3) - project into Riemann Sphere - Linux manual page
These functions project a point in the plane onto the surface of a Riemann Sphere, the one-point compactification of the complex plane. Each finite point z proj

manpages/dhcrelay.8.html
dhcrelay(8) - Dynamic Host Configuration Protocol Relay Agen
The Internet Systems Consortium DHCP Relay Agent, dhcrelay, provides a means for relaying DHCP and BOOTP requests from a subnet to which no DHCP server is direc

manpages/rview.1.html
rview(1) - Vi IMproved, a programmers text editor (ManPage)
Vim is a text editor that is upwards compatible to Vi. It can be used to edit all kinds of plain text. It is especially useful for editing programs. There are a

manpages/openat.2.html
openat(2) - open a file relative to a directory file descrip
Given a pathname for a file, open() returns a file descriptor, a small, nonnegative integer for use in subsequent system calls (read(2), write(2), lseek(2), fcn

manpages/XIGetClientPointer.3.html
XIGetClientPointer(3) - set or get the ClientPointer device
The ClientPointer is the device that is percieved to be the core pointer for non-XI protocol requests and replies. Each time a protocol message needs device-dep

manpages/gnutls_handshake_set_max_packet_length.3.html
gnutls_handshake_set_max_packet_length(3) - API function....
This function will set the maximum size of all handshake messages. Handshakes over this size are rejected with GNUTLS_E_HANDSHAKE_TOO_LARGE error code. The defa

manpages/sleep.3.html
sleep(3) - Sleep for the specified number of seconds........
sleep() makes the calling thread sleep until seconds seconds have elapsed or a signal arrives which is not ignored. RETURN VALUE Zero if the requested time has





We can't live, work or learn in freedom unless the software we use is free.