FALLOCATE(1) Dienstprogramme fur Benutzer FALLOCATE(1) BEZEICHNUNG fallocate - einer Datei Platz im Dateisystem zuweisen oder die Zuweisung losen UBERSICHT fallocate [-c|-p|-z] [-o Versatz] -l Lange [-n] Dateiname fallocate -d [-o Versatz] [-l Lange] Dateiname fallocate -x [-o Versatz] -l Lange Dateiname BESCHREIBUNG fallocate wird verwendet, um Blocke fur eine Datei vorzureservieren oder die Reservierung aufzuheben. Wenn das Dateisystem den fallocate(2)-Systemaufruf unterstutzt, geschieht dies schnell durch Zuweisung von Blocken und Markierung dieser Blocke als nicht initialisiert. Dadurch ist direkter E/A-Zugriff auf die Datenblocke unnotig. Diese Vorgehensweise ist bedeutend schneller als die Erzeugung der Datei durch Fullen mit Nullen. Der von fallocate zuruckgegebene Exit-Status ist 0 bei Erfolg und 1 bei Fehlschlag. OPTIONEN Nachfolgend kann den Argumenten Lange und Versatz eines der multiplikativen Suffixe KiB (=1024), MiB (=1024*1024) und so weiter fur GiB, TiB, PiB, EiB, ZiB und YiB folgen (das >>iB<< ist optional, zum Beispiel ist >>K<< gleichbedeutend mit >>KiB<<) oder die Suffixe KB (=1000), MB (=1000*1000) und so weiter fur GB, TB, PB, EB, ZB und YB folgen. The options --collapse-range, --dig-holes, --punch-hole, --zero-range and --posix are mutually exclusive. -c, --collapse-range entfernt einen Bereich aus einer Datei, ohne ein >>Loch<< zu hinterlassen. Der >>zusammenzuklappende<< Dateibereich beginnt bei Versatz und erstreckt sich uber die angegebene Lange in Byte. Nach Abschluss des Vorgangs ist der Inhalt der Datei, der ursprunglich an der Stelle Versatz+Lange stand, nun an der Stelle Versatz und die Datei ist Lange Byte kleiner. Die Option --keep-size kann fur die Anwendung von >>collapse-range<< nicht angegeben werden. Dies ist seit Linux 3.15 fur ext4 (nur fur Extent-basierte Dateien) und XFS verfugbar. Ein Dateisystem kann Einschrankungen bezuglich der Granularitat der Aktion setzen, um eine effiziente Implementierung sicherzustellen. Typischerweise mussen der Versatz und die Lange Vielfache der logischen Blockgrosse des Dateisystems, die vom Dateisystemtyp und der Konfiguration abhangt, sein. Falls ein Dateisystem so eine Anforderung hat, wird die Aktion mit dem Fehler EINVAL fehlschlagen, falls diese Anforderung verletzt ist. -d, --dig-holes Erkennen und Erstellen von >>Lochern<<. Hierdurch wird am Speicherort der Datei eine Sparse-Datei erstellt, ohne zusatzlichen Platz auf der Platte zu verwenden. Die minimale Grosse des >>Lochs<< hangt von der E/A-Blockgrosse des Dateisystems ab (ublicherweise 4096 Byte). Ausserdem ist --keep-size impliziert, wenn diese Option verwendet wird. Wenn kein Bereich durch --offset und --length angegeben wurde, wird die gesamte Datei auf >>Locher<< hin analysiert. Sie konnen sich diese Option wie das Ergebnis des Befehls >>cp --sparse<< vorstellen, wobei die Zieldatei den Namen der Ursprungsdatei erhalt und kein zusatzlicher Speicherplatz erforderlich ist. Mit der Option --punch-hole erhalten Sie eine Liste der unterstutzten Dateisysteme. -i, --insert-range fugt ein Loch der Lange Lange Bytes bei Versatz ein und verschiebt bestehende Daten. -l, --length Lange gibt die Lange des Zuweisungsbereiches in Byte an. -n, --keep-size verhindert die Anderung der eigentlichen Lange der Datei. Dadurch konnen tatsachlich auch Blocke nach dem Dateiende (EOF) zugewiesen werden, die durch Abschneiden entfernt werden konnen. -o, --offset Versatz gibt den Anfang des Zuweisungsbereiches in Byte an. -p, --punch-hole loscht eine Zuweisung (d.h. erzeugt ein >>Loch<<) im Bereich, der bei Versatz beginnt und sich uber die angegebene Lange in Bytes erstreckt. Innerhalb des angegebenen Bereiches werden Dateisystemblocke partiell auf Null gesetzt und ganze Dateisystemblocke aus der Datei entfernt. Nach erfolgreichem Aufruf geben nachfolgende Aufrufe Nullen aus diesem Bereich zuruck. Diese Option darf nicht gleichzeitig mit --zero-range angegeben werden. Ausserdem wird in dieser Option --keep-size impliziert. Dies wird fur XFS (seit Linux 2.6.38), ext4 (seit Linux 3.0), Btrfs (seit Linux 3.7), tmpfs (seit Linux 3.5) und gfs2 (seit Linux 4.16) unterstutzt. -v, --verbose aktiviert den ausfuhrlichen Modus. -x, --posix aktiviert den POSIX-Betriebsmodus. In diesem Modus wird die Zuweisung immer abgeschlossen, aber es kann langer dauern, wenn schnelle Zuweisung nicht vom darunterliegenden Dateisystem unterstutzt wird. -z, --zero-range Belegt den Raum in dem bei Versatz beginnenden Byte-Bereich fur Lange Bytes mit Nullen. Innerhalb des angegebenen Bereichs werden Blocke fur die Regionen, die die Locher in der Datei uberbrucken, vorbelegt. Nach einem erfolgreichen Aufruf liefern nachfolgende Leseanforderungen aus diesem Bereich Nullen zuruck. Das Nullen erfolgt innerhalb des Dateisystems, vorzugsweise durch Umwandlung des Bereichs in ungeschriebene Extents. Dieser Ansatz bedeutet, dass der angegebene Bereich nicht physisch auf dem Gerat mit Nullen gefullt wird (ausser fur Teilblocke an beiden Enden des Bereichs) und E/A (andernfalls) nur zur Aktualisierung von Metadaten benotigt wird. Die Option --keep-size kann angegeben werden, um Anderungen der Lange der Datei zu verhindern. Dies ist seit Linux 3.14 fur ext4 (nur fur Extent-basierte Dateien) und XFS verfugbar. -h, --help zeigt einen Hilfetext an und beendet das Programm. -V, --version Display version and exit. AUTOREN Eric Sandeen , Karel Zak SIEHE AUCH truncate(1), fallocate(2), posix_fallocate(3) FEHLER MELDEN For bug reports, use the issue tracker . VERFUGBARKEIT Der Befehl fallocate ist Teil des Pakets util-linux, welches aus dem Linux-Kernel-Archiv heruntergeladen werden kann. util-linux 2.41 2025-03-29 FALLOCATE(1)