1. NOM

posix_fallocate - Allouer de l'espace pour un fichier

2. SYNOPSIS

 
Sélectionnez
#include <fcntl.h>
int posix_fallocate(int fd, off_t offset, off_t len);



Exigences de macros de test de fonctionnalités pour la glibc (consultez feature_test_macros(7)) :

posix_fallocate() :
    _XOPEN_SOURCE >= 600 || _POSIX_C_SOURCE >= 200112L

3. DESCRIPTION

La fonction posix_fallocate() assure l'allocation d'espace disque pour le fichier référencé par le descripteur fd. L'allocation est de len octets à partir de l'adresse offset. Après un appel réussi à posix_fallocate(), les écritures suivantes dans l'intervalle spécifié sont certaines de ne pas échouer à cause d'un manque d'espace disque. Si la taille du fichier est inférieure offset+len, le fichier est agrandi à cette taille ; autrement, la taille du fichier n'est pas modifiée.

4. VALEUR RENVOYÉE

posix_fallocate() renvoie 0 si elle réussit et un numéro d'erreur si elle échoue. Notez que errno n'est pas écrite.

5. ERREURS

  • EBADF
        fd n'est pas un descripteur de fichier valable ou n'est pas ouvert en écriture.
  • EFBIG
        offset+len dépasse la taille maximale du fichier.
  • EINVAL
        offset était inférieur à 0, ou len était inférieur ou égal à 0.
  • ENODEV
        fd ne fait pas référence à un fichier régulier.
  • ENOSPC
        Il n'y a pas suffisamment d'espace disponible sur le périphérique où se trouve le fichier référencé par fd.
  • ESPIPE
        fd fait référence à un tube.

6. VERSIONS

posix_fallocate() est disponible depuis la glibc 2.1.94.

7. CONFORMITÉ

POSIX.1-2001. POSIX.1-2008 indique qu'une implémentation doit renvoyer l'erreur EINVAL si len valait 0 ou si offset était inférieur à 0. POSIX.1-2001 indique qu'une implémentation doit renvoyer l'erreur EINVAL était inférieur à 0 ou si offset était inférieur à 0 et peut renvoyer cette erreur si len est égal à 0.

8. VOIR AUSSI

9. COLOPHON

Cette page fait partie de la publication 3.52 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.

10. TRADUCTION

Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

Alain Portal <http://manpagesfr.free.fr/> (2006). Nicolas François et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».