Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > S

statfs(2)

HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

statfs, fstatfs — get file system statistics

SYNOPSIS

#include <sys/vfs.h>

int statfs(const char *path, struct statfs *buf);

int fstatfs(int fildes, struct statfs *buf);

DESCRIPTION

statfs() returns status information for a mounted file system.

fstatfs() returns similar information for an open file.

The parameters for the statfs() and fstatfs() functions are as follows:

path

is a pointer to a path name of any file within the mounted file system.

buf

is a pointer to a statfs structure, which is where the file system status information is stored.

fildes

is a file descriptor for an open file, which is created with the successful completion of an open(), creat(), dup(), fcntl(), or pipe() system call (see open(2), creat(2), dup(2), fcntl(2), or pipe(2)).

The statfs structure contains the following members:

int32_t f_bavail; /* free blocks available to non-superusers or users without the LIMIT privilege */ int32_t f_bfree; /* free blocks */ int32_t f_blocks; /* total blocks in file system */ int32_t f_bsize; /* fundamental file system block size in bytes */ int32_t f_ffree; /* free file nodes in file system */ int32_t f_files; /* total file nodes in file system */ int32_t f_type; /* type of info, zero for now */ fsid_t f_fsid /* file system ID. f_fsid[1] is the file system type; see sysfs(2) */

The fields f_blocks, f_bavail, and f_bfree are expressed in terms of blocks of size f_bsize.

A file node is a structure in the file system hierarchy that describes a file.

Fields that are undefined for a particular file system are set to -1.

Security Restrictions

The field f_bavail is the number of free blocks available to non-superusers or users without the LIMIT privilege. See privileges(5) for more information about privileged access on systems that support fine-grained privileges.

RETURN VALUE

statfs() and fstatfs() return 0 upon successful completion; otherwise, they return -1 and set errno to indicate the error.

ERRORS

If statfs() fails, errno is set to one of the following values:

EACCES

Search permission is denied for a component of the path prefix.

EFAULT

buf or path point to an invalid address.

EIO

An I/O error occurred while reading from or writing to the file system.

ELOOP

Too many symbolic links are encountered during path-name translation.

ENAMETOOLONG

The length of the specified path name exceeds PATH_MAX bytes, or the length of a component of the path name exceeds NAME_MAX bytes while _POSIX_NO_TRUNC is in effect.

ENOENT

The named file does not exist (for example, path is null or a component of path does not exist).

ENOTDIR

A component of the path prefix is not a directory.

EOVERFLOW

Result would overflow one or more fields of the statfs struct.

If fstatfs() fails, errno is set to one of the following values:

EBADF

fildes is not a valid open file descriptor.

EFAULT

buf points to an invalid address.

EIO

An I/O error occurs while reading from or writing to the file system.

WARNINGS

statfs() is deprecated and should be used only by legacy 32-bit applications. statvfs() or statvfs64() are the recommended replacements.

AUTHOR

statfs() and fstatfs() were developed by Sun Microsystems, Inc.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.