btrfs-transacti schreibt alle 30 Sekunden auf die Festplatte

837
Christian

Ich verwende Ubuntu 16.04.2 LTS mit btrfs auf 4 8-TB-Seagate-Laufwerken in RAID 1. Alle 30 Sekunden zeigt btrfs-transacti in iotop mit ca. 80 M / s für 15 Sekunden, auch wenn das System nicht verwendet wird. Das System wird nur einmal täglich zum Speichern von Backups verwendet, hat aber den ganzen Tag Aktivität.

Wie kann ich herausfinden, was diese Schreibspitzen verursacht und wie kann ich sie stoppen?

2
Ich sehe etwas Ähnliches. `Btrfs-transacti` schreibt ungefähr alle 30 Sekunden etwa 1 MB Daten und frisst langsam meine SSD. Ich habe bereits ein paar aktive Cache-Daten auf `tmpfs`-RAM-Disks verschoben und dafür gesorgt, dass` / var / log` `+ C` hat und die fs ohne` autodefrag` gemountet wurde, aber keine Verbesserung. Cobra_Fast vor 5 Jahren 0

1 Antwort auf die Frage

1
Zan Lynx

Ich glaube, es ist btrfs autodefrag. Ich krieg das auch. Dies ist eine Option, die explizit in der fstab festgelegt werden muss. Viele Leute empfehlen dies jedoch, insbesondere beim Drehen von Rost-Festplatten. SSDs interessieren sich nicht wirklich für Fragmente, die durch Copy-on-Write erzeugt werden.

Wenn sich das Verzeichnis / var / log auf btrfs befindet, werden die systemd-Journaldateien ziemlich oft defragmentiert.

Eine Sache, die Fedora macht, aber ich bin mir bei Ubuntu nicht sicher. Es markiert das Verzeichnis / var / log / journal und alle Unterverzeichnisse und Dateien mit chattr +C. Das 'C'-Attribut kennzeichnet es als nicht kopiert beim Schreiben, was bedeutet, dass Btrfs es liest und schreibt, genauso wie es ext4 oder xfs tun würde.

Die Verwendung des Attributs "C" verhindert große Fragmentierungs- oder Autodefrag-Schreibvorgänge, bedeutet jedoch auch, dass die Datei nicht durch Prüfsummen geschützt ist.

Auch wenn ich nicht genau weiß, wie Ihre Situation genau aussieht, ist es meine beste Vermutung, dass Sie / var / log / journal auf btrfs, mit autodefrag set und ohne das C-Attribut haben. Das würde die konstanten Schreibvorgänge über den Tag und die große Verwendung in den btrfs-transaction-Threads erklären.

Ich kann Ihre Annahmen nicht mehr überprüfen, da ich Ubuntu durch Openmediavault ersetzt habe. Dort sehe ich dieses Verhalten nicht. Wahrscheinlich haben Sie also Recht - möglicherweise war eine falsche Einstellung der Attribute die Ursache. Christian vor 6 Jahren 0