next up previous contents
Next: Ograniczanie przestrzeni dla użytkowników Up: System plików Previous: Reperowanie uszkodzonego systemu plików   Spis rzeczy

Funkcje statvfs() i statfs()

Tak samo jak funkcja stat() służy do wydobywania informacji o pliku, statvfs() może być wykorzystywane aby otrzymać informacje o systemie plików. Nagłówek tej funkcji (z pliku <sys/statvfs.h>) wygląda tak:
int satvfs(const char *path, struct statvfs *buf);.
Funkcja operuje na strukturze statvfs o następujących polach:
u_long f_bsize;           /* rozmiar bloku w systemie plików */
u_long f_frsize;          /* rozmiar podstawowego bloku (jeżeli jest wspierany) */
fsblkcnt_t f_blocks;      /* liczba bloków w systemie plików w f_frsize */
fsblkcnt_t f_bfree;       /* liczba wolnych bloków */
fsblkcnt_t f_bavail;      /* liczba wolnych dostępnych bloków */
fsfilcnt_t f_files;       /* liczba węzłów plików (inodów) */
fsfilcnt_t f_ffree;       /* liczba wolnych węzłów plików */
fsfilcnt_t f_favail;      /* liczba wolnych dostępnych węzłów plików */
u_long f_fsid;            /* identyfikator systemu plików */
char f_basetype[FSTYPSZ]; /* nazwa systemu plików */
u_long f_flag;            /* maska fagi */
u_long f_namemax;         /* maskymalny rozmiar pliku */
char f_fstr[32];          /* napis specyficzny dla systemu operacyjnego */
W Linuxie nie ma funkcji statvfs(), jej zadania wykonuje statfs() operująca na strukturze statfs. Pola tej struktury są bardzo podobne do pól statvfs.



Elżbieta Krępska 2004-01-19