NetBSD/bin/df/df.1

291 lines
7.4 KiB
Groff

.\" $NetBSD: df.1,v 1.58 2022/08/09 08:13:56 wiz Exp $
.\"
.\" Copyright (c) 1989, 1990, 1993
.\" The Regents of the University of California. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" @(#)df.1 8.2 (Berkeley) 1/13/92
.\"
.Dd August 8, 2022
.Dt DF 1
.Os
.Sh NAME
.Nm df
.Nd display free disk space
.Sh SYNOPSIS
.Nm
.Op Fl aclnW
.Op Fl G | Fl bkP | Fl bfgHhikmN
.Op Fl t Ar type
.Oo Ar file | Ar file_system Oc Ns ...
.Sh DESCRIPTION
.Nm
displays statistics about the amount of free disk space on the specified
.Ar file_system
or on the file system of which
.Ar file
is a part.
By default, all sizes are reported in 512-byte block counts.
If neither a file or a
.Ar file_system
operand is specified,
statistics for all mounted,
and not hidden (i.e.: not mounted with
.Dv MNT_IGNORE ) ,
file systems are displayed
(subject to the
.Fl a ,
.Fl l
and
.Fl t
options below).
.Pp
Note that the printed count of available blocks takes
.Va minfree
into account, and thus will be negative when the number of free blocks
on the file system is less than
.Va minfree .
.Pp
The following options are available:
.Bl -tag -width Ds
.It Fl a
If no
.Ar file ,
or
.Ar file_system
arguments are givem, show all mount points,
including those that were mounted with the
.Dv MNT_IGNORE
flag.
Note that for file systems specified on the command
line, that mount option is never considered.
.It Fl b
Show space as units of basic blocks (512 bytes).
This is normally the default; this option can be used to
override a conflicting setting in the environment variable
.Ev BLOCKSIZE .
.It Fl c
Display a grand total for all shown mount points.
When combined with
.Fl f
only the total for the mount points which otherwise
would be included is shown, not the individual entries.
.It Fl f
Display only the available free space (or with
.Fl i ,
free inodes) in a minimal format.
When there is to be only one line of output, only the value
is shown, otherwise the value and the mount point,
separated by a single space, are printed.
For free space, the
.Fl b ,
.Fl g ,
.Fl H ,
.Fl h ,
.Fl k
and
.Fl m
options, and
.Ev BLOCKSIZE
are all used as normal.
This option implies
.Fl N
and is incompatible with
.Fl P
and
.Fl G .
.It Fl G
Display all the fields of the structure(s) returned by
.Xr statvfs 2 .
This option cannot be used with the
.Fl f ,
.Fl i
or
.Fl P
options, and is modelled after the Solaris
.Fl g
option.
This option will override the
.Fl b ,
.Fl g ,
.Fl H ,
.Fl h ,
.Fl k
and
.Fl m
options, as well as any setting of
.Ev BLOCKSIZE .
.It Fl g
The
.Fl g
option causes size numbers to be reported in gigabytes (1024*1024*1024
bytes).
.It Fl h
Use
.Dq human-readable
output for space data.
Use unit suffixes: Byte, Kilobyte, Megabyte,
Gigabyte, Terabyte, Petabyte, Exabyte in order to reduce the number of
digits to four or less.
.It Fl H
As with
.Fl h
but using powers of 10 (1000) rather than 2 (1024).
.It Fl i
Include statistics on the number of free inodes.
When combined with
.Fl f
only the number of free inodes is shown.
.It Fl k
By default, all sizes are reported in 512-byte block counts,
unless the
.Ev BLOCKSIZE
environment variable is set.
The
.Fl k
option causes the size numbers to be reported in kilobytes (1024 bytes).
.It Fl l
Display statistics only about mounted file systems with the
.Dv MNT_LOCAL
flag set.
If a non-local file system is given as an argument, a
warning is issued and no information is given on that file system.
.It Fl m
The
.Fl m
option causes size numbers to be reported in megabytes (1024*1024 bytes).
.It Fl N
Suppress the header line normally output.
This option is ignored with
.Fl G
which has no header line to ignore,
and with
.Fl P
which requires the header line to maintain
the portable format it is designed to emulate.
.It Fl n
Print out the previously obtained statistics from the file systems.
This option should be used if it is possible that one or more
file systems are in a state such that they will not be able to provide
statistics without a long delay.
When this option is specified,
.Nm
will not request new statistics from the file systems, but will respond
with the possibly stale statistics that were previously obtained.
.It Fl P
Produce output in the following portable format:
.Pp
The output will be preceded by the following header line:
.Bd -literal
"Filesystem <blksize>-blocks Used Available Capacity Mounted on\en"
.Ed
.Pp
The header line is followed by data formatted as follows:
.Bd -literal
"%s %d %d %d %d%% %s\en", <file system name>, <total space>,
<space used>, <space free>, <percentage used>,
<file system root>
.Ed
.Pp
Note that the
.Fl i
option may not be specified with
.Fl P ,
and the
.Ar blksize
is required to be 512 or 1024.
.It Fl t Ar type
Is used to indicate the actions should only be taken on
file systems of the specified type.
More than one type may be specified in a comma-separated list.
The list of file system types can be prefixed with
.Dq no
to specify the file system types for which action should
.Em not
be taken.
If a file system is given on the command line that is not of
the specified type, a warning is issued and no information is given on
that file system.
.It Fl W
Print the wedge name instead of the mounted from device for wedges.
The wedge name is prefixed with
.Dq NAME=
as in
.Xr fstab 5 .
If the wedge information cannot be obtained for one or more
file systems, the
.Fl W
option is silently ignored for those file systems.
.El
.Pp
If more than one of
.Fl b ,
.Fl g ,
.Fl H ,
.Fl h ,
.Fl k
or
.Fl m
is given, the last of those specified is used.
.Sh ENVIRONMENT
.Bl -tag -width BLOCKSIZE
.It Ev BLOCKSIZE
If the environment variable
.Ev BLOCKSIZE
is set, and none of the
.Fl b ,
.Fl g ,
.Fl H ,
.Fl h ,
.Fl k
and
.Fl m
options are specified,
the block counts will be displayed in units of that size block.
.El
.Sh SEE ALSO
.Xr quota 1 ,
.Xr fstatvfs 2 ,
.Xr getvfsstat 2 ,
.Xr statvfs 2 ,
.Xr getbsize 3 ,
.Xr getmntinfo 3 ,
.Xr humanize_number 3 ,
.Xr fs 5 ,
.Xr fstab 5 ,
.Xr mount 8 ,
.Xr quot 8 ,
.Xr tunefs 8
.Sh HISTORY
A
.Nm
utility appeared in
.At v1 .
The
.Fl f
option was added in
.Nx 10 .