xfs_fsr(8)

BEZEICHNUNG
xfs_fsr - Der Dateisyste-Umstrukturierer für XFS

ÜBERSICHT
xfs_fsr [-vdg] [-t Sekunden] [-p Durchläufe] [-f Verbleib] [-m mtab]
xfs_fsr [-vdg] [xfsdev | Datei] …
xfs_fsr -V

BESCHREIBUNG
xfs_fsr ist nur auf XFS-Dateisysteme anwendbar.

xfs_fsr verbessert die Organisation eingehängter Dateisysteme. Der Umstrukturierungs-Algorithmus arbeitet mit jeweils einer Datei zu einer bestimmten Zeit, wobei er das Dateisystem entweder kompakter gestaltet oder auf andere Art das Layout der »Extents« (zusammenhängende Blöcke von Datei-Daten) verbessert.

Die folgenden Optionen werden von xfs_fsr akzeptiert. Die Optionen -m, -t und -f haben keine Bedeutung, falls Dateien oder Dateisysteme in der Befehlszeile übergeben werden.

-m mtab
    Die angegebene Datei als Quelle für eine Liste von Dateisystemen benutzen, die neu strukturiert werden sollen. Der Vorgabewert ist /etc/mtab.

-t Sekunden
    Wie lange umstrukturiert werden soll. Vorgabewert sind hier 7200 Sekunden (2 Stunden).

-p Durchläufe
    Anzahl der Durchläufe, bevor die globale Umstrukturierung beendet wird. Vorgabewert ist 10 Durchläufe.

-f leftoff
    Diese Datei anstelle von /var/tmp.fsrlast nutzen, um den Zustand einzulesen, mit dem die Arbeit (wieder) aufgenommen werden soll. Dies ist zugleich die Datei, in die der Zustand gespeichert wird, mit dem die Arbeit (auch vorzeitig) beendet wurde.

-v  Ausführlich und wortreich (verbose). Kryptische Informationen über Dateien zeigen, die gerade neu strukturiert werden.

-d  Fehlerdiagnose. Noch mehr kryptische Informationen zeigen.

-g  In das Systemprotokoll schreiben. Dies ist der Vorgabewert, wenn die Standardausgabe kein tty ist.

-V  Gibt die Versionsnummer aus und beendet das Programm.

Wird xfs_fsr ohne Argumente aufgerufen, so strukturiert es alle regulären Dateien in allen eingehängten Dateisystemen. xfs_fsr durchläuft /etc/mtab viele Male, und mit jedem Mal absolviert es einen einzigen Durchlauf je XFS-Dateisystem. Jeder Durchlauf durchsucht das Dateisystem und es werden die Dateien ausgewählt, die die größte Anzahl an Extents haben. xfs_fsr versucht die obersten 10 % dieser Dateien in jedem Durchlauf zu defragmentieren.

xfs_fsr läuft für bis zu zwei Stunden. Danach hinterlegt es den Zustand des Dateisystems in einer Datei, um zu einem späteren Zeitpunkt an dieser Stelle fortfahren zu können. Diese Information wird in der Datei /var/tmp/.fsrlast_xfs gespeichert. Sollte die hierin gefundene Information inkonsistent oder veraltet sein, wird die Information ignoriert, und die Neustrukturierung beginnt am Anfang des ersten Dateisystems, das in /etc/mtab gefunden wird.

xfs_fsr kann mit einem oder mehreren Argumenten aufgerufen werden, die Dateisysteme (Name des Block-Gerätes) und Dateien sein können, die neu strukturiert werden sollen. In diesem Modus schreibt und liest xfs_fsr nicht nach bzw. von /var/tmp/.fsrlast_xfs. Es arbeitet auch nicht für eine vorgegebene Zeitdauer. Es macht einen Durchlauf je angegebener regulärer Datei und für alle regulären Dateien in jedem angegebenen Dateisystem. Ein in der Befehlszeile angegebener Name, der auf einen symbolischen Link verweist (mit Ausnahme zu einem Dateisystem-Gerät), ein FIFO oder einen UNIX-Domain-Socket, erzeugt eine Warnung, wird ansonsten aber ignoriert. Beim Durchlauf durch ein Dateisystem werden diese Datei-Typen stillschweigend übersprungen.

DATEIEN
/etc/mtab
    enthält die standardmäßige Liste von neu zu strukturierenden Dateisystemen.
/var/tmp/.fsrlast_xfs
    Erfasst den Zustand, mit dem die Umstrukturierung zuletzt endete.

SIEHE AUCH
xfs_fsr(8), mkfs.xfs(8), xfs_ncheck(8), xfs(5).

ANMERKUNGEN
xfs_fsr verbessert das Layout der Extents für jede Datei, indem es die gesamte Datei an einen temporären Ort kopiert und dann die Datenbereiche der Ziel- und der temporären Dateien in einer atomaren Transaktion austauscht. Dieses Vorgehen erfordert, dass ausreichend freier Plattenspeicher für die Kopien zur Verfügung steht, und dass dieser Speicher weniger fragmentiert als die Originaldatei ist. Weiterhin ist es notwendig, dass der Besitzer der Datei über ein ausreichendes Dateisystemkontingent verfügt, um die Kopie auf Systemen mit Plattenkontingenten durchführen zu können. xfs_fsr erzeugt eine Warnung, falls der freie Platz nicht ausreicht, um die Zieldatei zu verbessern.

Eine temporäre Datei, die dazu dient, eine in der Befehlszeile übergebene Datei zu verbessern, wird im Elternverzeichnis der Zieldatei erstellt und erhält die vorangestellte Zeichenkette (Präfix) ».fsr«. Die vorübergehenden Dateien, die zur Verbesserung eines gesamten XFS-Gerätes erstellt werden, werden in einem Verzeichnis an der Wurzel des Zielgerätes gespeichert und verwenden das selbe Benennungs-Schema. Diese vorübergehenden Dateien werden zum Zeitpunkt der Erstellung vom übrigen Dateisystem getrennt (»unlinked«), so dass die Daten nicht durch einen anderen Prozess lesbar sind.

xfs_fsr arbeitet nicht auf Dateien, die aktuell in den Arbeitsspeicher abgebildet sind, d.h. die sich aktuell im RAM befinden. Sollte die Option »verbose« (-v) gesetzt sein, lässt sich dies anhand eines »file busy«-Fehlers (»Datei beschäftigt«) erkennen.

Dateien, die mit »no-defrag« markiert sind (»keine Defragmentierung«), werden übersprungen. Verwenden Sie den Befehl xfs_io(8) chattr in Verbindung mit dem Parameter -f, um diese Markierung zu setzen oder zu entfernen. Dateien und Verzeichnisse, die in einem Verzeichnis mit der »no-defrag«-Markierung erstellt werden, erben dieses Merkmal.

Einträge in /etc/mtab oder die nach der Option -m angegebene Datei müssen über Lese- und Schreibberechtigungen verfügen; sie müssen also als rw markiert sein. Ist diese Option nicht vorhanden, dann wird xfs_fsr die Datei bzw. das gesamte Dateisystem in dieser Zeile in /etc/mtab überspringen. Für weitere Details lesen Sie fstab(5).

Allgemein lässt sich keine Notwendigkeit erkennen, xfs_fsr auf System-Partitionen wie /, /boot oder /usr anzuwenden, da diese generell nicht unter Fragmentierung leiden werden. Ferner kommt es zu Problemen bei der Defragmentierung von Dateien, die lilo(8) für den Startvorgang des Systems verwendet. Es wird empfohlen, diese Dateien als »no-defrag« mit Hilfe des Befehls xfs_io(8) chattr zu markieren. Sollten diese Dateien durch xfs_fsr bewegt werden, dann müssen Sie vor einem Neustart lilo erneut aufrufen, andernfalls könnte das System nicht mehr startfähig sein.

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Mathias F. Popp <mpo_manpages@protonmail.ch> und Helge Kreutzmann <debian@helgefjell.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) 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: debian-l10n-german@lists.debian.org.