di - disk information
di [-AaghHklLmnPtZ] [-b block-size] [-d display-size] [-f format] [-I
include-fstyp-list] [-s sort-type] [-w block-width] [-W inode-width]
[-x exclude-fstyp-list] [-X debug-level] [-z zone-name] [file [...]]
di Displays usage information on mounted filesystems. Block values are
reported in megabytes (1024k bytes) by default, but may be changed. If
file is specified, the usage information for the partition on which
file is located is printed.
Unless the -a flag is specified, the following mounted filesystems will
not normally be displayed: filesystems with total blocks <= 0;
filesystems marked by the operating system as "ignore"; automounted
filesystems that are duplicates of other normally mounted filesystems;
loopback filesystems that are part of a zone (Solaris).
mi Displays the mounted filesystem information.
Several options may be specified to control the output of di and mi:
-A Print all fields (used for debugging). Mount points and special
device names are printed at full width. The -a flag is set.
-a Prints all mounted devices (normally, those with 0 total blocks
are not printed - e.g. /dev/proc, /dev/fd).
-b block-size (compatibility: -B)
Change the base block size from 1024 (default) to the size
specified. block-size may be one of: k - 1024 bytes, si - 1000
bytes, or a specific size.
-d display-size Display the blocks in units specified by
display-size. Note that if the base block size is SI units of
1000 bytes, the display size is calculated using those units.
display-size may be one of: 512 - POSIX, k - kilobytes,
m - megabytes, g - gigabytes, t - terabytes, P - petabytes,
E - exabytes, Z - zettabytes, Y - yottabytes, h - Scaled
alternative 1, H - Scaled alternative 2, or a specific value to
use as the block size.
Block display sizes greater than 1024 bytes are displayed with a
precision of one decimal place after the radix.
The Scaled alternatives scale the sizes displayed and appends a
suffix (e.g. 48.0k, 3.4M).
With scaled alternative 1, sizes within a line may scale to
Scaled alternative 2 scales all the sizes in each individual
line to the same unit size (the largest needed).
-f format Use the specified format string format. Format strings
are described below.
-g (alias for: -dg)
Display sizes in gigabytes.
-h (alias for: -dh)
Display partition sizes in scaled alternative 1 format.
-H (alias for: -dH)
Display partition sizes in scaled alternative 2 format.
-I include-fstype-list (compatibility: -F)
Include only the file system types listed in include-fstyp-list.
The list is a comma separated list of file system types.
Multiple -I options may be specified. If the ’fuse’ filesystem
type is specified, all fuse* filesystems will be included. e.g.
-I nfs,rfs or -I nfs -I rfs.
-k (alias for: -dk)
Display sizes in Kbytes.
-l Display only local file systems.
-L Don’t do the check for duplicate filesystems.
-m (alias for: -dm)
Display sizes in megabytes.
-n Do not print a header line above the list of file systems.
Useful when parsing the output of di.
-P Output format is POSIX standard. 512 byte block size is the
default. The -k option may be used.
Use sort-type to sort the output. The output of di is normally
sorted by mount point. The following sort flags may be used to
change the sort order: m - by mount point (default); n - leave
unsorted (as it appears in the mount table); s - by special
device name; t - by filesystem type; r - reverse the sort order.
These sort options may be combined in any order. e.g.: di
-stsrm; di -strsrm.
-t Print a totals line below the list of file systems. Pooled
filesystems (zfs, advfs) have only the main pool added to the
total. It is up to the user to exclude (using the -x option)
read-only filesystems (cdfs, iso9660), swap-based (memfs, mfs,
tmpfs) filesystems and user (fuse*) filesystems. Excluding the
’fuse’ filesystem will exclude all fuse* filesystems.
Set the print width for block values. Default is eight.
Set the print width for inode values. Default is seven.
-x exclude-fstype-list (old: -i)
Exclude the file system types listed in exclude-fstyp-list. The
list is a comma separated list of file system types. Multiple
-x options may be specified. If the ’fuse’ filesystem type is
excluded, all fuse* filesystems will be excluded. e.g. -x
nfs,rfs or -x nfs -x rfs.
Set the program’s debugging level to debug-level.
Display the filesystems for the specified zone. The zone must
be visible to the user.
-Z (alias for: -z all)
Display the filesystems for all visible zones.
The output of di may be specified via a format string. This string may
be given either via the -f command line option or by the DIFMT
environment variable. The format string may specify the following
m Print the name of the mount point.
M Print the name of the mount point, at full length. The mount
point is formatted to the maximum width necessary for the
longest mount point name.
b Print the total number of megabytes on the file system. See
also the -d option.
B Print the total number of megabytes on the file system
available for use by normal users. See also the -d option.
u Print the number of megabytes in use on the file system (actual
number of megabytes used = total - free). See also the -d
c Print the number of megabytes not available for use by normal
users (total - available). See also the -d option.
f Print the number of free (unused) megabytes on the file system.
See also the -d option.
v Print the number of megabytes available for use by normal
users. See also the -d option.
p Print the percentage of megabytes not available for use by
normal users (number of megabytes not available for use / total
disk space). See also the -d option.
1 Print the percentage of total megabytes in use (actual number
of megabytes used / total disk space). See also the -d option.
2 Print the percentage of megabytes in use, BSD-style.
Represents the percentage of user-available space in use. Note
that values over 100% are possible (actual number of megabytes
used / disk space available to non-root users). See also the
a Print the percentage of megabytes available for use by normal
users (number of megabytes available for use / total disk
space). See also the -d option.
3 Print the percentage of total megabytes free (actual number of
megabytes free / total disk space). See also the -d option.
i Print the total number of file slots (inodes) that can be
created on the file system.
U Print the number of file slots in use.
F Print the number of file slots available.
P Print the percentage of file slots in use.
s Print the file system name (special device or remote mount
S Print the file system name (special device or remote mount
point), at full length. The file system name is formatted to
the maximum width necessary for the longest file system name.
t Print the file system type.
T Print the file system type at full length. The file system
type is formatted to the maximum width necessary for the
longest file system type.
I Print the time the filesystem was mounted. This column is not
supported on all systems.
O Print the filesystem mount options.
The default format string for di is smbuvpT.
The default format string for mi is MSTIO.
The format string may also contain any other character not listed
above. The character will be printed as is. e.g. di -f ’mbuvp|iUFP’
will print the character ’|’ between the disk usage and the file slot
usage. The command sequence (Bourne Shell):
di -f ’mbuvp
will print two lines of data for each filesystem.
Various df equivalent format strings for System V release 4 are:
/usr/bin/df -v di -P -f msbuf1
/usr/bin/df -k di -dk -f sbcvpm
/usr/ucb/df di -dk -f sbuv2m
If you like your numbers to add up/calculate the percentage correctly,
try one of the following format strings:
di -f SMbuf1T
di -f SMbcvpT
di -f SMBuv2T
The DIFMT environment variable may be used to specify the default
display format string.
The DI_ARGS environment variable may be used to specify command line
arguments. e.g. If you always want gigabytes displayed, set DI_ARGS
equal to "-dg". Any command line arguments specified will override the
DI_ARGS environment variable.
The GNU df POSIXLY_CORRECT, and DF_BLOCK_SIZE and the BSD BLOCKSIZE
environment variables are honored.
For filesystems that do not report available blocks (e.g. System V
release 3), the number of available blocks is considered to be the
number of free blocks.
Do not replace your system’s df command with this program. You will in
all likelihood break your installation procedures.
df(1), fstab(5), getmnt(2), getmntinfo(2), mnttab(4), mount(1M)
Send bug reports to: bll6969di_at_gmail.com
This program is Copyright 1994-2009 by Brad Lanam.
Brad Lanam, Walnut Creek, CA (bll6969di_at_gmail.com)
22 Nov 2009 di(1)