Section (2) ustat
ustat — get filesystem statistics
#include <sys/types.h> #include <unistd.h> /* libc */ #include <ustat.h> /* glibc2 */
|struct ustat *ubuf
ustat() returns information
about a mounted filesystem.
dev is a device number
identifying a device containing a mounted filesystem.
ubuf is a pointer to
a ustat structure that
contains the following members:
daddr_t f_tfree; /* Total free blocks */ ino_t f_tinode; /* Number of free inodes */ char f_fname; /* Filsys name */ char f_fpack; /* Filsys pack name */
The last two fields,
f_fpack, are not implemented
and will always be filled with null bytes (_zsingle_quotesz_ _zsingle_quotesz_).
On success, zero is returned and the ustat structure pointed to by
ubuf will be filled in. On
error, −1 is returned, and
errno is set appropriately.
ubufpoints outside of your accessible address space.
devdoes not refer to a device containing a mounted filesystem.
The mounted filesystem referenced by
devdoes not support this operation, or any version of Linux before 1.3.16.
ustat() is deprecated and
has been provided only for compatibility. All new programs
should use statfs(2) instead.
The HP-UX version of the ustat structure has an additional
that is unknown elsewhere. HP-UX warns: For some
filesystems, the number of free inodes does not change.
Such filesystems will return −1 in the field
some filesystems, inodes are dynamically allocated. Such
filesystems will return the current number of free
This page is part of release 5.04 of the Linux
man-pages project. A
description of the project, information about reporting bugs,
and the latest version of this page, can be found at
Copyright (C) 1995, Thomas K. Dyas <tdyaseden.rutgers.edu>
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
Since the Linux kernel and libraries are constantly changing, this
manual page may be incorrect or out-of-date. The author(s) assume no
responsibility for errors or omissions, or for damages resulting from
the use of the information contained herein. The author(s) may not
have taken the same level of care in the production of this manual,
which is licensed free of charge, as they might when working
Formatted or processed versions of this manual, if unaccompanied by
the source, must acknowledge the copyright and authors of this work.
Created 1995-08-09 Thomas K. Dyas <tdyaseden.rutgers.edu>
Modified 1997-01-31 by Eric S. Raymond <esrthyrsus.com>
Modified 2001-03-22 by aeb
Modified 2003-08-04 by aeb