table of contents
- bullseye 4.10.0-1
- bullseye-backports 4.18.1-1~bpo11+1
- testing 4.18.1-1
- unstable 4.18.1-1
FALLOCATE(1) | Dienstprogramme für Benutzer | FALLOCATE(1) |
BEZEICHNUNG¶
fallocate - einer Datei Platz im Dateisystem zuweisen oder die Zuweisung lösen
ÜBERSICHT¶
fallocate [-c|-p|-z] [-o Versatz] -l Länge [-n] Dateiname
fallocate -d [-o Versatz] [-l Länge] Dateiname
fallocate -x [-o Versatz] -l Länge Dateiname
BESCHREIBUNG¶
fallocate wird verwendet, um Blöcke für eine Datei vorzureservieren oder die Reservierung aufzuheben. Wenn das Dateisystem den fallocate-Systemaufruf unterstützt, geschieht dies schnell durch Zuweisung von Blöcken und Markierung dieser Blöcke als nicht initialisiert. Dadurch ist direkter E/A-Zugriff auf die Datenblöcke unnötig. Diese Vorgehensweise ist bedeutend schneller als die Erzeugung der Datei durch Füllen mit Nullen.
Der von fallocate zurückgegebene Exit-Status ist 0 bei Erfolg und 1 bei Fehlschlag.
OPTIONEN¶
Die Argumente für Länge und Versatz können durch die Binärsuffixe KiB (=1024), MiB (=1024*1024) und so weiter für GiB, TiB, PiB, EiB, ZiB und YiB ergänzt werden, wobei das »iB« nicht erforderlich ist. Zum Beispiel ist »K« gleichbedeutend mit »KiB«. Möglich sind außerdem die Dezimalsuffixe KB (=1000), MB (=1000*1000), GB, PB, EB, ZB und YB.
Die Optionen --collapse-range, --dig-holes, --punch-hole und --zero-range schließen sich gegenseitig aus.
- -c, --collapse-range
- entfernt einen Bereich aus einer Datei, ohne ein »Loch« zu
hinterlassen. Der »zusammenzuklappende« Dateibereich beginnt
bei Versatz und erstreckt sich über die angegebene
Länge in Byte. Nach Abschluss des Vorgangs ist der Inhalt
der Datei, der ursprünglich an der Stelle
Versatz+Länge stand, nun an der Stelle Versatz
und die Datei ist Länge Byte kleiner. Die Option
--keep-size kann für die Anwendung von
»collapse-range« nicht angegeben werden.
Dies ist seit Linux 3.15 für ext4 (nur für Extent-basierte Dateien) und XFS verfügbar.
Ein Dateisystem kann Einschränkungen bezüglich der Granularität der Aktion setzen, um eine effiziente Implementierung sicherzustellen. Typischerweise müssen der Versatz und die Länge Vielfaches der logischen Blockgröße des Dateisystems, die vom Dateisystemtyp und der Konfiguration abhängt, 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 »Löchern«. Hierdurch wird
am Speicherort der Datei eine Sparse-Datei erstellt, ohne
zusätzlichen Platz auf der Platte zu verwenden. Die minimale
Größe des »Lochs« hängt von der
E/A-Blockgröße des Dateisystems ab (üblicherweise
4096 Byte). Außerdem ist --keep-size impliziert, wenn diese
Option verwendet wird. Wenn kein Bereich durch --offset und
--length angegeben wurde, wird die gesamte Datei auf
»Löcher« hin analysiert.
Sie können sich diese Option wie das Ergebnis des Befehls »cp --sparse« vorstellen, wobei die Zieldatei den Namen der Ursprungsdatei erhält und kein zusätzlicher Speicherplatz erforderlich ist.
Mit der Option --punch-hole erhalten Sie eine Liste der unterstützten Dateisysteme.
- -i, --insert-range
- fügt ein Loch der Länge Länge Bytes bei Versatz ein und verschiebt bestehende Daten.
- -l, --length length
- gibt die Länge des Zuweisungsbereiches in Byte an.
- -n, --keep-size
- verhindert die Änderung der eigentlichen Länge der Datei. Dadurch können tatsächlich auch Blöcke nach dem Dateiende (EOF) zugewiesen werden, die durch Abschneiden entfernt werden können.
- -o, --offset Versatz
- gibt den Anfang des Zuweisungsbereiches in Byte an.
- -p, --punch-hole
- löscht eine Zuweisung (d.h. erzeugt ein »Loch«) im
Bereich, der bei Versatz beginnt und sich über die
angegebene Länge in Bytes erstreckt. Innerhalb des
angegebenen Bereiches werden Dateisystemblöcke partiell auf Null
gesetzt und ganze Dateisystemblöcke aus der Datei entfernt. Nach
erfolgreichem Aufruf geben nachfolgende Aufrufe Nullen aus diesem Bereich
zurück. Diese Option darf nicht gleichzeitig mit
--zero-range angegeben werden. Außerdem wird in dieser
Option --keep-size impliziert.
Dies wird für 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) unterstützt.
- -v, --verbose
- aktiviert den ausführlichen Modus.
- -x, --posix
- aktiviert POSIX-Betriebsmodus. In diesem Modus wird die Zuweisung immer abgeschlossen, aber es kann länger dauern, wenn schnelle Zuweisung nicht vom darunterliegenden Dateisystem unterstützt wird.
- -z, --zero-range
- Belegt den Raum in dem bei Versatz beginnenden Byte-Bereich
für Länge Bytes mit Nullen. Innerhalb des angegebenen
Bereichs werden Blöcke für die Regionen, die die
Löcher in der Datei überbrücken, vorbelegt. Nach
einem erfolgreichen Aufruf liefern nachfolgende Leseanforderungen aus
diesem Bereich Nullen zurück.
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 Gerät mit Nullen gefüllt wird (außer für Teilblöcke an beiden Enden des Bereichs) und E/A (andernfalls) nur zur Aktualisierung von Metadaten benötigt wird.
Die Option --keep-size kann angegeben werden, um Änderungen der Länge der Datei zu verhindern.
Dies ist seit Linux 3.14 für ext4 (nur für Extent-basierte Dateien) und XFS verfügbar.
- -V, --version
- zeigt Versionsinformationen an und beendet das Programm.
- -h, --help
- zeigt einen Hilfetext an und beendet das Programm.
AUTOREN¶
SIEHE AUCH¶
VERFÜGBARKEIT¶
Der Befehl fallocate ist Teil des Pakets util-linux, welches aus dem Linux Kernel-Archiv heruntergeladen werden kann.
ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann@gmail.com>, Helge Kreutzmann <debian@helgefjell.de> und Dr. Tobias Quathamer <toddy@debian.org> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.
April 2014 | util-linux |