Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       statvfs, fstatvfs - Obtenir les statistiques d'un système de fichiers

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <sys/statvfs.h>

       int statvfs(const char *restrict path, struct statvfs *restrict buf);
       int fstatvfs(int fd, struct statvfs *buf);

DESCRIPTION

       La  fonction statvfs() renvoie des informations sur un système de fichiers monté. path est
       un chemin vers n'importe quel fichier du système de fichiers monté. buf  est  un  pointeur
       vers une structure statvfs approximativement définie comme ceci :

           struct statvfs {
               unsigned long  f_bsize;    /* taille de bloc du sys. de fich. */
               unsigned long  f_frsize;   /* taille d'un fragment */
               fsblkcnt_t     f_blocks;   /* taille du sys. de fich. en unité f_frsize */
               fsblkcnt_t     f_bfree;    /* nombre de blocs libres */
               fsblkcnt_t     f_bavail;   /* nombre de blocs libres pour util. ordinaires */
               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 util. ordinaires */
               unsigned long  f_fsid;     /* identifiant du sys. de fich. */
               unsigned long  f_flag;     /* attributs de montage */
               unsigned long  f_namemax;  /* longueur maximale de nom de fichier */
           };

       Les  types  fsblkcnt_t  et  fsfilcnt_t  utilisés  ici  sont  définis  dans  <sys/types.h>.
       Auparavant les deux étaient des unsigned long.

       Le champ f_flags est un masque de bits indiquant diverses  options  de  montage  utilisées
       lors  du  montage  de  ce  système  de  fichiers.  Il  contient zéro ou plus des attributs
       suivants :

       ST_MANDLOCK
              Les verrouillages impératifs sont permis sur  le  système  de  fichiers  (consultez
              fcntl(2)).

       ST_NOATIME
              Ne pas mettre à jour les dates d'accès ; consultez mount(2).

       ST_NODEV
              Ne  pas autoriser l'accès à des fichiers spéciaux de périphérique sur ce système de
              fichiers.

       ST_NODIRATIME
              Ne pas mettre à jour les dates d'accès aux répertoires ; consultez mount(2).

       ST_NOEXEC
              Ne pas permettre l'exécution de programmes sur ce système de fichiers.

       ST_NOSUID
              Les bits set-user-ID et set-group-ID sont ignorés par  exec(3)  pour  les  fichiers
              exécutables sur ce système de fichiers.

       ST_RDONLY
              Le système de fichiers est monté en lecture seule.

       ST_RELATIME
              Mettre à jour la date d'accès par rapport à mtime ou ctime : consultez mount(2).

       ST_SYNCHRONOUS
              Les écritures sont immédiatement synchronisées avec le système de fichiers (voir la
              description de O_SYNC dans open(2)).

       Il n'est pas indiqué si tous les membres de la structure renvoyée ont  un  sens  quel  que
       soit le système de fichiers.

       fstatvfs()  renvoie la même information sur un fichier ouvert référencé par le descripteur
       fd.

VALEUR RENVOYÉE

       En cas de succès, zéro est renvoyé. En cas d'erreur, -1 est renvoyé et errno  est  définie
       pour préciser l'erreur.

ERREURS

       EACCES (statvfs()) Un élément du chemin d'accès path ne permet pas le parcours. (Consultez
              aussi path_resolution(7).)

       EBADF  (fstatvfs()) fd n'est pas un descripteur de fichier ouvert valable.

       EFAULT buf ou path pointent en dehors de l'espace d'adressage accessible.

       EINTR  L'appel a été interrompu par un signal ; consultez signal(7).

       EIO    Une erreur d'entrée-sortie est survenue lors  de  la  lecture  sur  le  système  de
              fichiers.

       ELOOP  (statvfs()) Trop de liens symboliques rencontrés dans la translation de path.

       ENAMETOOLONG
              (statvfs()) path est trop long.

       ENOENT (statvfs()) Le fichier indiqué par path n'existe pas.

       ENOMEM La mémoire disponible du noyau n'était pas suffisante.

       ENOSYS Le système de fichiers ne gère pas cet appel.

       ENOTDIR
              (statvfs()) Un élément du chemin d'accès path n'est pas un répertoire.

       EOVERFLOW
              Certaines  valeurs  sont  trop  grandes  pour  être  représentées dans la structure
              renvoyée.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌────────────────────────────────────────────────────────┬──────────────────────┬─────────┐
       │InterfaceAttributValeur  │
       ├────────────────────────────────────────────────────────┼──────────────────────┼─────────┤
       │statvfs(), fstatvfs()                                   │ Sécurité des threads │ MT-Safe │
       └────────────────────────────────────────────────────────┴──────────────────────┴─────────┘

STANDARDS

       POSIX.1-2001, POSIX.1-2008.

       Seuls les attributs ST_NOSUID et ST_RDONLY du champ f_flag sont définis dans POSIX.1. Pour
       obtenir des définitions des autres attributs, il faut définir _GNU_SOURCE.

NOTES

       Le  noyau  Linux  a  les  appels  système  statfs(2) et fstatfs(2) pour gérer cet appel de
       bibliothèque.

       Avant la glibc 2.13, statvfs() remplissait les  bits  du  champ  f_flag  en  balayant  les
       options  de  montage  apparaissant dans /proc/mounts. Toutefois, à partir de Linux 2.6.36,
       l'appel système statfs(2) sous-jacent fournit les informations nécessaires dans  le  champ
       f_flags  et  depuis  la  glibc 2.13,  la fonction utilise les informations provenant de ce
       champ plutôt que de balayer /proc/mounts.

       Les implémentations par la glibc de

           pathconf(path, _PC_REC_XFER_ALIGN);
           pathconf(path, _PC_ALLOC_SIZE_MIN);
           pathconf(path, _PC_REC_MIN_XFER_SIZE);

       utilisent respectivement les champs f_frsize, f_frsize et f_bsize renvoyées par un appel à
       statvfs() avec l'argument path.

VOIR AUSSI

       statfs(2)

TRADUCTION

       La  traduction  française  de  cette  page  de  manuel  a  été créée par Christophe Blaess
       <https://www.blaess.fr/christophe/>, Stéphan  Rafin  <stephan.rafin@laposte.net>,  Thierry
       Vignaud  <tvignaud@mandriva.com>,  François Micaux, Alain Portal <aportal@univ-montp2.fr>,
       Jean-Philippe   Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)    <jean-
       luc.coulon@wanadoo.fr>,    Julien    Cristau    <jcristau@debian.org>,    Thomas   Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau  <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis
       Barbier <barbier@debian.org>,  David  Prévot  <david@tilapin.org>  et  Jean-Pierre  Giraud
       <jean-pierregiraud@neuf.fr>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General
       Public  License  version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   concernant   les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.