GNU/Linux |
CentOS 4.8 |
i386 |
![]() |
ustat(2) |
![]() |
ustat − get file system statistics
#include
<sys/types.h>
#include <unistd.h> /* libc[45] */
#include <ustat.h> /* glibc2 */
int ustat(dev_t dev, struct ustat *ubuf);
ustat returns information about a mounted file system. dev is a device number identifying a device containing a mounted file system. 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 characters.
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.
EINVAL |
dev does not refer to a device containing a mounted file system. | ||
EFAULT |
ubuf points outside of your accessible address space. | ||
ENOSYS |
The mounted file system referenced by dev does not support this operation, or any version of Linux before 1.3.16. |
SVr4. SVr4 documents additional error conditions ENOLINK, ECOMM, and EINTR but has no ENOSYS condition.
ustat is deprecated and has only been provided for compatibility. All new programs should use statfs(2) instead.
The HP version of struct ustat has an additional field f_blksize that is unknown elsewhere. HP warns: For some file systems, the number of free inodes does not change. Such file systems will return -1 in the field f_tinode. For some file systems, inodes are dynamically allocated. Such file systems will return the current number of free inodes.
statfs(2), stat(2)
![]() |
ustat(2) | ![]() |