Provided by:
manpages-fr-dev_3.27fr1.4-1_all 
NOM
fallocate - Manipuler un espace de fichier
SYNOPSIS
#define _GNU_SOURCE /* Consultez feature_test_macros(7) */
#include <fcntl.h>
int fallocate(int fd, int mode, off_t offset, off_t len);
DESCRIPTION
C'est un appel systeme specifique a Linux et non portable. Pour la
methode portable, specifiee par POSIX.1, pour assurer que de l'espace
est alloue pour un fichier, consultez posix_fallocate().
fallocate() permet a l'appelant de manipuler directement l'espace
disque alloue pour le fichier reference par fd pour la plage d'octets
debutant a offset et de longueur len octets.
Le parametre mode definit l'operation a effectuer sur la plage donnee.
Actuellement, un seul attribut est pris en charge pour mode :
FALLOC_FL_KEEP_SIZE
Cet attribut alloue et initialise a zero l'espace disque de la
plage definie par offset et len. Apres un appel reussi, les
ecritures dans cette place sont assurees de ne pas echouer a
cause d'un manque de place sur le disque. La preallocation de
blocs initialises a zero au-dela de la fin de fichier est utile
pour l'optimisation de la charge de travail pour d'ajout. La
preallocation ne modifie pas la taille du fichier (comme indique
par stat(2)) meme si elle est inferieure a offset+len.
Si l'attribut FALLOC_FL_KEEP_SIZE n'est pas specifie dans mode, le
comportement par defaut est pratiquement le meme que quand l'attribut
est specifie. La seule difference est qu'en cas de reussite, la taille
du fichier sera modifiee si offset + len est superieur a la taille du
fichier. Ce comportement par defaut ressemble de pres au comportement
de la fonction de bibliotheque posix_fallocate(3), et est concu comme
une methode d'optimisation de l'implementation de cette fonction.
Parce que l'allocation est effectuee en fragments de taille de blocs,
fallocate() peut allouer un espace plus grand que celui qui a ete
specifie.
VALEUR RENVOY'EE
La fonction fallocate() renvoie zero en cas de reussite et -1 en cas
d'echec.
ERREURS
EBADF fd n'est pas un descripteur de fichier valable ou n'est pas
ouvert en ecriture.
EFBIG offset+len excede la taille maximum de fichier.
EINTR Un signal a ete capture pendant l'execution.
EINVAL offset etait inferieur a 0, ou len etait inferieur ou egal a 0.
EIO Une erreur d'entree-sortie s'est produite durant la lecture ou
l'ecriture sur un systeme de fichiers.
ENODEV fd ne fait pas reference a un fichier regulier ou un repertoire.
(Si fd est un tube ou une FIFO, une erreur differente en
resultera)
ENOSPC Il n'y a pas suffisamment d'espace disponible sur le
peripherique ou se trouve le fichier reference par fd.
ENOSYS Le systeme de fichiers contenant le fichier reference par fd ne
gere pas cette operation.
EOPNOTSUPP
Le mode n'est pas pris en charge par le systeme de fichiers
contenant le fichier reference par fd.
VERSIONS
fallocate() est disponible dans Linux depuis le noyau 2.6.23. Le glibc
le prend en charge depuis la version 2.10.
CONFORMIT'E
fallocate() est specifique a Linux.
VOIR AUSSI
ftruncate(2), posix_fadvise(3), posix_fallocate(3)
COLOPHON
Cette page fait partie de la publication 3.27 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent etre trouvees a l'adresse
<URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION
Depuis 2010, cette traduction est maintenue a l'aide de l'outil po4a
<URL:http://po4a.alioth.debian.org/> par l'equipe de traduction
francophone au sein du projet perkamon
<URL:http://perkamon.alioth.debian.org/>.
Julien Cristau et l'equipe francophone de traduction de
Debian (2006-2009).
Veuillez signaler toute erreur de traduction en ecrivant a
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir acces a la version anglaise de ce document
en utilisant la commande << man -L C <section> <page_de_man> >>.