summaryrefslogtreecommitdiff
path: root/system/zerofree/zerofree.8
diff options
context:
space:
mode:
Diffstat (limited to 'system/zerofree/zerofree.8')
-rw-r--r--system/zerofree/zerofree.892
1 files changed, 92 insertions, 0 deletions
diff --git a/system/zerofree/zerofree.8 b/system/zerofree/zerofree.8
new file mode 100644
index 0000000000..fb6f277e7b
--- /dev/null
+++ b/system/zerofree/zerofree.8
@@ -0,0 +1,92 @@
+.TH "ZEROFREE" "8"
+.SH "NAME"
+zerofree \(em zero free blocks from ext2, ext3 and ext4 file-systems
+.SH "SYNOPSIS"
+.PP
+\fBzerofree\fR [\fB-n\fP] [\fB-v\fP] [\fB-f fillval\fP] \fIfilesystem\fR
+.SH "DESCRIPTION"
+.PP
+\fBzerofree\fR finds the unallocated,
+blocks with non-zero value content in an ext2, ext3 or ext4
+\fIfilesystem\fR (e.g. /dev/hda1) and
+fills them with zeroes (or another octet of your choice).
+
+
+.PP
+Filling unused areas with zeroes is useful if the device on
+which this file-system resides is a disk image. In this case,
+depending on the type of disk image, a secondary utility may be
+able to reduce the size of the disk image after zerofree has
+been run.
+
+.PP
+Filling unused areas may also be useful with solid-state
+drives (SSDs). On some SSDs, filling blocks with ones (0xFF)
+is reported to trigger Flash block erasure by the firmware,
+possibly giving a write performance increase.
+
+.PP
+The usual way to achieve the same result (zeroing the
+unallocated blocks) is to run \fBdd\fR (1) to
+create a file full of zeroes that takes up the entire free
+space on the drive, and then delete this file. This has many
+disadvantages, which zerofree alleviates:
+.IP " \(bu" 6
+it is slow;
+.IP " \(bu" 6
+it makes the disk image (temporarily) grow to its maximal
+extent;
+.IP " \(bu" 6
+it (temporarily) uses all free space on the disk, so other
+concurrent write actions may fail.
+
+.PP
+\fIfilesystem\fR has to be unmounted or
+mounted read-only for \fBzerofree\fR to work. It
+will exit with an error message if the
+\fIfilesystem\fR is mounted writable. To
+remount the root file-system readonly, you can first switch to
+single user runlevel (\fBtelinit 1\fR) then use
+\fBmount \-o remount,ro
+\fIfilesystem\fR\fR.
+
+.PP
+\fBzerofree\fR has been written to be run
+from GNU/Linux systems installed as guest OSes inside a virtual
+machine. In this case, it is typically run from within the guest
+system, and a utility is then run from the host system to shrink
+disk image (\fBVBoxManage modifyhd \-\-compact\fR,
+provided with virtualbox, is able to do that for some disk image
+formats).
+
+.PP
+It may however be useful in other situations: for instance
+it can be used to make it more difficult to retrieve deleted
+data. Beware that securely deleting sensitive data is not in
+general an easy task and usually requires writing several times
+on the deleted blocks.
+
+.SH "OPTIONS"
+.IP "\fB-n\fP " 10
+Perform a dry run (do not modify the file-system);
+.IP "\fB-v\fP " 10
+Be verbose;
+.IP "\fB-f value\fP " 10
+Specify the octet value to fill empty blocks with (defaults to
+0). Argument must be within the range 0 to 255.
+.SH "SEE ALSO"
+.PP
+dd (1).
+.SH "AUTHOR"
+.PP
+This manual page was written by Thibaut Paumard <paumard@users.sourceforge.net> for
+the \fBDebian\fP system (but may be used by others). Permission is
+granted to copy, distribute and/or modify this document under
+the terms of the GNU General Public License, Version 2 or any
+later version published by the Free Software Foundation.
+
+.PP
+On Debian systems, the complete text of the GNU General Public
+License can be found in /usr/share/common-licenses/GPL-2.
+
+.\" created by instant / docbook-to-man, Mon 31 Mar 2014, 15:41