ustat — get filesystem statistics
Synopsis
#include <sys/types.h> #include <unistd.h> /* libc[45] */ #include <ustat.h> /* glibc2 */ int ustat(dev_t dev, struct ustat *ubuf);
Description
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[6]; /* Filsys name */ char f_fpack[6]; /* Filsys pack name */
The last two fields, f_fname and f_fpack, are not implemented and will always be filled with null bytes ('\0').
Return Value
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.
Errors
- EFAULT
ubuf points outside of your accessible address space.
- EINVAL
dev does not refer to a device containing a mounted filesystem.
- ENOSYS
The mounted filesystem referenced by dev does not support this operation, or any version of Linux before 1.3.16.
Versions
Since version 2.28, glibc no longer provides a wrapper for this system call.
Conforming to
SVr4.
Notes
ustat() is deprecated and has been provided only for compatibility. All new programs should use statfs(2) instead.
HP-UX notes
The HP-UX version of the ustat structure has an additional field, f_blksize, 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 f_tinode. For some filesystems, inodes are dynamically allocated. Such filesystems will return the current number of free inodes.
See Also
Colophon
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 https://www.kernel.org/doc/man-pages/.