btrfs-transactiは30秒ごとにディスクに書き込みます
4 8 TB RAID1のSeagateドライブでbtrfsを使用してUbuntu16.04.2LTSを実行しています。30秒ごとにbtrfs-transactiが約80M/sで15秒間iotopに表示されます。 、システムが使用されていない場合でも、システムは1日1回のバックアップの保存にのみ使用されますが、1日中ディスクアクティビティがあります。
これらの書き込みピークの原因を特定するにはどうすればよいですか?また、それを停止するにはどうすればよいですか?
私はそれがbtrfsautodefragだと信じています。私もそれらを取得します。これはfstabで明示的に設定する必要があるオプションですが、特に回転するRustハードドライブ。SSDはコピーによって生成されたフラグメントを実際には気にしません-オンライト。
次に、/ var/logディレクトリがbtrfsにある場合、systemdジャーナルファイルを頻繁にデフラグすることになります。
Fedoraが行うことの1つですが、Ubuntuについてはよくわかりません。それは、/ var/log/journalディレクトリとすべてのサブディレクトリおよびファイルをchattr +C
でマークすることです。 'C'属性は、コピーオンライトではないことを示します。つまり、btrfsは、ext4またはxfsと同じように読み取りと書き込みを行います。
「C」属性を使用すると、大量の断片化や自動デフラグ書き込みを防ぐことができますが、ファイルがチェックサムで保護されていないことも意味します。
正確な状況はわかりませんが、btrfsに/ var/log/journalがあり、autodefragが設定されていて、C属性がないことが最善の推測です。これは、1日を通して一定の書き込みがあり、btrfs-transactionスレッドで大量に使用されていることを説明します。