Scroll to navigation

FALLOCATE(1) Commandes utilisateur FALLOCATE(1)

NOM

fallocate - Réserver ou rendre de l'espace pour un fichier

SYNOPSIS

fallocate [-n] [-p] [-c] [-z] [-o position] -l longueur fichier
fallocate -d [-o position] [-l longueur] fichier

DESCRIPTION

fallocate sert à manipuler l’espace disque alloué à un fichier, soit pour le réserver, soit pour le rendre. Pour les systèmes de fichiers qui permettent l'appel système fallocate(2), la réservation est réalisée rapidement en allouant des blocs et en les marquant comme non initialisés, sans nécessiter d'échange (entrée ou sortie) avec les blocs de données. C'est bien plus rapide que de créer un fichier en le remplissant de zéros.
Le code de retour renvoyé par fallocate est 0 en cas de réussite et 1 en cas d'échec.

OPTIONS

Les arguments longueur et position peuvent être suivis des suffixes multiplicatifs KiB=1024, MiB=1024*1024, etc., pour GiB, TiB, PiB, EiB, ZiB et YiB (la partie « iB » est facultative, par exemple « K » est identique à « KiB ») ou des suffixes KB=1000, MB=1000*1000, etc., pour GB, TB, PB, EB, ZB et YB.
Les options --collapse-range, --dig-holes, --punch-hole et --zero-range s'excluent mutuellement.
-n, --keep-size
Ne pas modifier la longueur apparente du fichier. Des blocs pourraient être alloués après la fin du fichier, ils peuvent être enlevés avec truncate.
-p, --punch-hole
Désallouer l'espace (c'est-à-dire créer un trou) dans l'intervalle d'octets commençant à position et continuant pendant longueur octets. Dans l'espace indiqué, les blocs partiels de systèmes de fichiers sont mis à zéro et les blocs complets de systèmes de fichiers sont retirés du fichier. Après un appel réussi, les lectures suivantes dans cet intervalle renverront des zéros. Cette option peut ne pas être indiquée en même temps que l’option --zero-range. De plus, lors de l’utilisation de cette option, --keep-size est implicite.
Pris en charge pour XFS (depuis Linux 2.6.38), ext4 (depuis Linux 3.0), Btrfs (depuis Linux 3.7) et tmpfs (depuis Linux 3.5).
-d, --dig-holes
Détecter et creuser des trous. Rassembler les fichiers creux, sans utiliser d’espace disque supplémentaire. La taille minimale du trou dépend de la taille de bloc d’entrée et sortie du système de fichiers (4096 octets en général). De plus, en utilisant cette option, --keep-size est implicite. Si aucun intervalle n’est indiqué par --offset et --length, tout le fichier est analysé pour les trous.
Cela peut être considéré comme faire un «  cp --sparse » et renommer le fichier de destination comme fichier original, sans avoir besoin d’espace disque supplémentaire.
Consultez --punch-hole pour la liste des systèmes de fichiers pris en charge.
-c, --collapse-range
Supprimer un intervalle d’octets d’un fichier, sans laisser de trou. L’intervalle d’octets à supprimer commence à position et continue pendant longueur octets. À la fin de l’opération, le contenu du fichier commençant à position+longueur sera ajouté à la position et le fichier sera longueur plus petit. L’option --keep-size ne peut pas être utilisée pour une opération de suppression d’intervalle.
Disponible depuis Linux 3.15 pour ext4 (seulement pour les fichiers avec extension de domaine ou « extent ») et XFS.
-z, --zero-range
Initialiser l'intervalle d'octets commençant à position et continuant pendant longueur octets. Dans l'espace indiqué, les blocs sont préalloués pour les zones qui couvrent les trous du fichier. Après un appel réussi, les lectures suivantes dans cet intervalle renverront des zéros.
L’initialisation est réalisée dans le système de fichiers de préférence en convertissant l’intervalle en « extents » non écrits. Cette approche signifie que l’intervalle indiqué ne sera pas physiquement initialisé sur le périphérique (à part les blocs partiels aux extrémités de l’intervalle) et qu’une entrée ou sortie n’est (sinon) nécessaire que pour mettre à jour les métadonnées.
L’option --keep-size peut être indiquée pour empêcher la modification de taille du fichier.
Disponible depuis Linux 3.14 pour ext4 (seulement pour les fichiers avec extension de domaine ou « extent ») et XFS.
-o, --offset position
Indiquer la position de début de l’intervalle, en octet.
-l, --length longueur
Indiquer la longueur de l’intervalle, en octet.
-h, --help
Afficher un texte d'aide puis quitter.
-v, --verbose
Activer le mode verbeux.
-V, --version
Afficher les informations sur la version et quitter.

AUTEURS

Eric Sandeen
 
Karel Zak

VOIR AUSSI

fallocate(2), posix_fallocate(3), truncate(1)

DISPONIBILITÉ

La commande fallocate fait partie du paquet util-linux, elle est disponible sur l’archive du noyau Linux
septembre 2011 util-linux