FALLOCATE(1) Commandes de l'utilisateur FALLOCATE(1)

fallocate – Préallouer ou désallouer de l'espace pour un fichier

fallocate [-c|-p|-z] [-o position] -l taille [-n] fichier

fallocate -d [-o position] [-l taille] nom-fichier

fallocate -x [-o position] -l taille nom-fichier

fallocate sert à manipuler l’espace disque alloué à un fichier, soit pour le préallouer, soit pour le désallouer. Pour les systèmes de fichiers qui permettent l'appel système fallocate(2), la préallocation 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, ce qui est bien plus rapide que de créer un fichier en le remplissant de zéros.

L'état de sortie renvoyé par fallocate est 0 en cas de réussite et 1 en cas d'échec.

Les arguments taille et position peuvent être suivis des suffixes multiplicatifs KiB (=1024), MiB (=1024*1024), et ainsi de suite 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), et ainsi de suite pour GB, TB, PB, EB, ZB et YB.

Les options --collapse-range, --dig-holes, --punch-hole et --zero-range s'excluent mutuellement.

-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 taille octets. À la fin de l’opération, le contenu du fichier commençant à position+taille sera ajouté à la position et le fichier sera plus petit de taille octets. 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.

Un système de fichiers peut poser des limites à la granularité de l'opération, afin de garantir une implémentation efficace. Typiquement, position et taille doivent être des multiples de la taille du bloc logique, laquelle varie selon le type et la configuration du système de fichiers. Si un système de fichiers a ce genre d'obligation, l'opération échouera avec l'erreur EINVAL si cette obligation est violée.

-d, --dig-holes

Détecter et creuser des trous. Cela rassemble 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, le fichier entier est analysé pour les trous.

Cette option peut être vue comme faire un « cp --sparse » puis renommer le fichier de destination comme le fichier original, sans avoir besoin d’espace disque supplémentaire.

Consultez --punch-hole pour une liste des systèmes de fichiers pris en charge.

-i, --insert-range

Insérer un trou de taille taille octets à partir de la position en déplaçant les données existantes.

-l, --length taille

Indiquer la taille de l’intervalle, en octets.

-n, --keep-size

Ne pas modifier la taille apparente du fichier. Des blocs pourraient être alloués après la fin du fichier, ils peuvent être enlevés avec truncate.

-o, --offset position

Indiquer la position de début de l’intervalle, en octets.

-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 taille octets. Dans l'espace indiqué, les blocs partiels du système de fichiers sont mis à zéro et les blocs complets du système 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 ne peut 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), tmpfs (depuis Linux 3.5) et gfs2 (depuis Linux 4.16).

-v, --verbose

Activer le mode verbeux.

-x, --posix

Activer le mode d'opération POSIX. Dans ce mode, l'opération d'allocation se termine toujours, mais peut prendre plus de temps si l'allocation rapide n'est pas prise en charge par le système de fichiers sous-jacent.

-z, --zero-range

Initialiser l'intervalle d'octets commençant à position et continuant pendant taille 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.

-h, --help

Afficher l’aide-mémoire puis quitter.

-V, --version

Afficher la version puis quitter.

Eric Sandeen <sandeen@redhat.com>, Karel Zak <kzak@redhat.com>

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

Pour envoyer un rapport de bogue, utilisez le système de gestion des problèmes à l'adresse https://github.com/util-linux/util-linux/issues.

La commande fallocate fait partie du paquet util-linux téléchargeable sur Linux Kernel Archive https://www.kernel.org/pub/linux/utils/util-linux/.

La traduction française de cette page de manuel a été créée par Christophe Blaess <ccb@club-internet.fr>, Michel Quercia <quercia AT cal DOT enst DOT fr>, Thierry Vignaud <tvignaud@mandriva.com>, Frédéric Delanoy <delanoy_f@yahoo.com>, Thierry Vignaud <tvignaud@mandriva.com>, Christophe Sauthier <christophe@sauthier.com>, Sébastien Blanchet, Jérôme Perzyna <jperzyna@yahoo.fr>, Aymeric Nys <aymeric AT nnx POINT com>, Alain Portal <aportal@univ-montp2.fr>, Thomas Huriaux <thomas.huriaux@gmail.com>, Yves Rütschlé <l10n@rutschle.net>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Philippe Piette <foudre-blanche@skynet.be>, Jean-Baka Domelevo-Entfellner <domelevo@gmail.com>, Nicolas Haller <nicolas@boiteameuh.org>, Sylvain Archenault <sylvain.archenault@laposte.net>, Valéry Perrin <valery.perrin.debian@free.fr>, Jade Alglave <jade.alglave@ens-lyon.org>, Nicolas François <nicolas.francois@centraliens.net>, Alexandre Kuoch <alex.kuoch@gmail.com>, Lyes Zemmouche <iliaas@hotmail.fr>, Florentin Duneau <fduneau@gmail.com>, Alexandre Normand <aj.normand@free.fr>, David Prévot <david@tilapin.org> et Jean-Philippe MENGUAL <jpmengual@debian.org>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 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.

17 février 2022 util-linux 2.38