Provided by: manpages-fr-dev_4.23.1-1_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 s'est produite durant la lecture du 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 │
       └────────────────────────────────────────────────────────┴──────────────────────┴─────────┘

VERSIONS

       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.

       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.

       Sous Linux, f_favail est toujours identique à f_ffree et il est impossible  qu'un  système
       de  fichiers  donne  un  résultat différent. Ce n'est pas un problème dans la mesure où il
       n'existe aucun système de fichiers avec une réservation d'inœuds par le superutilisateur.

STANDARDS

       POSIX.1-2008.

HISTORIQUE

       POSIX.1-2001.

       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.

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⟩.