FSTRIM(8)

BEZEICHNUNG
fstrim - ungenutzte Blöcke in einem eingehängten Dateisystem verwerfen

ÜBERSICHT

fstrim [-v] [-o Versatz] [-l Länge] [-m minimale-Größe] -A|-a|Einhängepunkt

BESCHREIBUNG

fstrim wird in eingehängten Dateisystemen verwendet, um in diesem Dateisystem nicht genutzte Blöcke zu verwerfen (zu »trimmen«). Dies ist nützlich bei Solid State Drives (SSDs) und Medien mit knappem Speicherplatz.

Per Vorgabe verwirft fstrim alle ungenutzten Blöcke im Dateisystem. Zum Anpassen des Verhaltens sind Optionen verfügbar, die auf Bereichen oder Größenangaben basieren, wie nachfolgend erläutert.

Das Argument Einhängepunkt bezeichnet den Pfadnamen des Verzeichnisses, in dem das Dateisystem eingehängt ist und wird benötigt, wenn -A, -a, --fstab oder --all nicht angegeben ist.

Die häufige Ausführung von fstrim oder auch mount -o discard kann die Lebensdauer qualitativ minderwertiger SSD-Geräte negativ beeinflussen. Eine für die meisten Arbeitsplatzrechner und Server sinnvolle Zeitspanne ist einmal pro Woche. Beachten Sie, dass nicht alle Geräte eine Verwerfungs-Warteschlange unterstützen, daher verursacht jeder Verwerfungsbefehl Leistungseinbußen bei allem, was zu dieser Zeit auf die Platte zugreift.

OPTIONEN

Nachfolgend kann den Argumenten Versatz, Länge und minimale-Größe eines der multiplikativen Suffixe KiB (=1024), MiB (=1024*1024) und so weiter für 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 für GB, TB, PB, EB, ZB und YB folgen.

-A, --fstab
    »trimmt« alle in /etc/fstab erwähnten eingehängten Dateisysteme auf Geräten, die den Verwerfungsvorgang unterstützen. Das Wurzeldateisystem wird aus der Kernel-Befehlszeile ermittelt, falls diese Information in der Datei fehlt. Weitere übergebene Optionen, wie --offset, --length und --minimum, werden auf alle diese Geräte angewendet. Fehlermeldungen von Dateisystemen, die den Verwerfungsvorgang nicht unterstützen, von schreibgeschützten Geräten, autofs und schreibgeschützten Dateisystemen werden stillschweigend ignoriert. Dateisysteme mit der Einhängeoption »X-fstrim.notrim« werden übersprungen.

-a, --all
    »trimmt« alle eingehängten Dateisysteme auf Geräten, die den Verwerfungsvorgang unterstützen. Weitere übergebene Optionen, wie --offset, --length und --minimum, werden auf alle diese Geräte angewendet. Fehlermeldungen von Dateisystemen, die den Verwerfungsvorgang nicht unterstützen sowie schreibgeschützte Geräte und Dateisysteme werden stillschweigend ignoriert.

-n, --dry-run
    Diese Option macht alles außer dem eigentlichen Aufruf des FITRIM-Ioctl.

-o, --offset Versatz
    gibt den Byte-Versatz im Dateisystem an, an dem nach zu verwerfenden freien Blöcken gesucht werden soll. Vorgabewert ist 0, beginnend am Anfang des Dateisystems.

-l, --length Länge
    gibt die Anzahl der Bytes nach der Startposition für die Suche nach zu verwerfenden freien Blöcken an. Falls der angegebene Wert hinter dem Ende des Dateisystems liegt, stoppt fstrim an den Dateisystemgrenzen. Der Vorgabewert nimmt das Ende des Dateisystems an.

-I, --listed-in Liste
    gibt eine durch Doppelpunkte getrennte Liste im Fstab-Format oder im Mountinfo-Format des Kernels an. Alle fehlenden oder leeren Dateien werden stillschweigend ignoriert. Die Erweiterung der Liste endet mit dem Erscheinen der ersten nicht-leeren Datei. Zum Beispiel:

    --listed-in /etc/fstab:/proc/self/mountinfo.

    Dateisysteme mit der Einhängeoption »X-fstrim.notrim« in der fstab werden übersprungen.

-m, --minimum minimale-Größe
    gibt den minimalen freien zu verwerfenden Bereich in Bytes an. Dieser Wert wird intern auf ein Vielfaches der Blockgröße des Dateisystems gerundet. Kleinere freie Bereiche werden ignoriert und fstrim wird das Minimum anpassen, falls es kleiner als das Minimum des Gerätes ist und dies (fstrim_range.minlen) zur Anwendungsebene zurückmelden. Durch Erhöhen dieses Wertes wird die fstrim-Operation auf Dateisystemen mit stark fragmentierten freien Bereichen schneller vonstatten gehen, andererseits werden nicht alle Blöcke verworfen. Der Vorgabewert ist 0, wodurch alle freien Blöcke verworfen werden.

-t, --types Liste
    gibt bei der Verwendung mit --all oder --fstab die zugelassenen oder verbotenen Dateisystemtypen an. Die Liste ist eine durch Kommata getrennte Liste aus Dateisystemnamen. Die Liste wird so ausgewertet wie mount -t Typmuster liest. Nur angegebene Dateisystemtypen sind zugelassen. Falls der Liste ein »no« vorangestellt ist, sind alle angegebenen Typen verboten, beziehungsweise jedes einzelne Dateisystem ist verboten, dem ein »no« vorangestellt ist. Falls die Option nicht verwendet wird, dann sind alle Dateisysteme (außer »autofs«) zugelassen.

-v, --verbose
    gibt ausführliche Meldungen aus. Falls angegeben, gibt fstrim die Anzahl der Bytes aus, die vom Dateisystem als potenzielle Blöcke zum Verwerfen gemeldet werden. Diese Anzahl ist die maximal zu verwerfende Menge aus der Sicht des Speichergerätes, da FITRIM ioctl wiederholt aufgerufen wird und dadurch die gleichen zu verwerfenden Sektoren mehrfach ausgegeben werden.

    fstrim meldet jedes Mal die gleichen potenziell zu verwerfenden Bytes, aber es werden nur Sektoren des Speichergerätes tatsächlich verworfen, die zwischenzeitlich beschrieben worden sind. Weiterhin behält sich die Block-Ebene des Kernels vor, die zu verwerfenden Bereiche anzupassen, damit sie in die Stripe-Geometrie des Raids passen und nicht-trimmfähigen Geräten in einer LVM-Umgebung gerecht zu werden. Diese Beschränkungen werden in fstrim_range.len (der Option --length) nicht reflektiert.

--quiet-unsupported
    unterdrückt Fehlermeldungen, falls der Trimm-Vorgang (Ioctl) nicht unterstützt wird. Diese Option ist für die Verwendung in systemd-Dienstedateien oder cron(8)-Skripten gedacht, um dort Warnungen zu unterdrücken, die auf bekannten Problemen beruhen, wie beispielsweise die Meldung Bad file descriptor des NFS-Treibers, wenn ein Gerät schreibgeschützt eingehängt ist, oder die fehlende Dateisystemunterstützung beim FITRIM-Ioctl-Aufruf. Diese Option leert auch den Exit-Status, wenn in der fstrim-Befehslzeile ein nicht unterstütztes Dateisystem angegeben wird.

-h, --help
    zeigt einen Hilfetext an und beendet das Programm.

-V, --version
    zeigt Versionsinformationen an und beendet das Programm.

EXIT-STATUS

0
    Erfolg

1
    Fehlschlag

32
    alle fehlgeschlagen

64
    einige Verwerfungsvorgänge in Dateisystemen waren erfolgreich, einige sind fehlgeschlagen

Der Befehl fstrim --all gibt 0 zurück (alle erfolgreich), 32 (alle fehlgeschlagen) oder 64 (einige fehlgeschlagen, einige erfolgreich).

AUTOREN

SIEHE AUCH

blkdiscard(8), mount(8)

FEHLER MELDEN

Nutzen Sie zum Melden von Fehlern das

VERFÜGBARKEIT

Der Befehl fstrim ist Teil des Pakets util-linux, welches aus dem heruntergeladen werden kann.