1. NOM▲
posix_fallocate - Allouer de l'espace pour un fichier
2. SYNOPSIS ▲
#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 ▲
fallocate(1), fallocate(2), lseek(2), posix_fadvise(2)
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> ».