int statvfs(const char *path, struct statvfs *buf);
int fstatvfs(int fd, struct statvfs *buf);
struct statvfs { unsigned long f_bsize; /* taille de bloc du système de fichiers */ unsigned long f_frsize; /* taille d'un fragment */ fsblkcnt_t f_blocks; /* taille du système de fichiers en unité f_frsize */ fsblkcnt_t f_bfree; /* nombre de blocs libres */ fsblkcnt_t f_bavail; /* nombre de blocs libres pour non-root */ fsfilcnt_t f_files; /* nombre d'inœuds */ fsfilcnt_t f_ffree; /* nombre d'inœuds libres */ fsfilcnt_t f_favail; /* nombre d'inœuds libres pour non-root */ unsigned long f_fsid; /* identifiant du système de fichiers */ unsigned long f_flag; /* attributs de montage */ unsigned long f_namemax; /* longueur maximum de nom de fichier */ };
Les types fsblkcnt_t et fsfilcnt_t utilisés ici sont définis dans <sys/types.h>. Ils sont tous les deux de type unsigned long.
Le champ f_flag est un masque de bit (des attributs de montage, voir mount(8)). Les bits définis par la spécification POSIX sont
Il n'est pas spécifié si tous les membres de la structure retournée ont un sens quelque soit le système de fichiers.
fstatvfs() renvoie la même information sur un fichier ouvert référencé par le descripteur fd.
Les implémentations actuelles de
pathconf(path, _PC_REC_XFER_ALIGN); pathconf(path, _PC_ALLOC_SIZE_MIN); pathconf(path, _PC_REC_MIN_XFER_SIZE);
dans la glibc utilisent respectivement les champs f_frsize, f_frsize et f_bsize de la valeur de retour de statvfs(path,buf).
Ce document est une traduction réalisée par Alain Portal <aportal AT univ-montp2 DOT fr> le 27 juin 2005 et révisée le 17 juillet 2008.
L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 statvfs ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.
Dernière mise à jour : 17 juillet 2008