btrfs ファイルシステムがいっぱいですが、ファイルを削除してもスペースが解放されません

btrfs ファイルシステムがいっぱいですが、ファイルを削除してもスペースが解放されません

私のシステムは、df -hルートファイルシステムがいっぱいであることを(100%利用可能0)報告し、btrfs fi usage /すべてのスペースが割り当てられたことを知らせます。再起動後に必要なサービスも起動できなくなり、今すぐ回復モードに入りました。

私は次のようにシステムのバランスをとろうとします。btrfsエラー:バランス調整中にエラーが発生しました。デバイスに余分なスペースがありません。。私はbtrfs balance start -dusage=27 /次のようになります。

Done, had to relocate 0 out of 56 chunks`

私はbtrfs balance start -dusage=28 /次のようになります。

ERROR: error during balancing '/': No space left on device

そのため、その中にあるファイルの削除を始めましたが、/var/log/100MBのファイルを複数削除しても、レポートdf -hには使用できるビットが1つもありませんでした。

スペースが確保されれば、そのスペースを埋めることができるサービスが出ると思います。しかし、回復モードにあるので、サービスはそれほど多くはありません。

ファイルを削除したらすぐにスペースを埋めるのはどうすればわかりますか?

btrfsが再調整に使用する空き容量があるかどうかを確認するにはどうすればよいですか?

私のシステムはdebian 10.3(buster)で、ファイルシステムbtrfsとdockerがインストールされています。これは問題の一部であると疑われますが、回復モードでは実行されないため...

ベストアンサー1

歴史的に、btrfsの一部のスペースが不足している状況では、ボリュームに追加のディスクを一時的に追加する必要がありました。これは、btrfsのCOW属性のため、以前のバージョンを解放する前に変更されたブロックバージョンを保持するための一時スペースが必要になる可能性があるためです。しかし、私が知っている限り、これらのケースの多くはbtrfs開発者によって修正されました。

btrfsボリュームの緊急ディスク使用量分析のために私が書いたツールbtduをお勧めします。

https://github.com/Cyber​​Shadow/btdu

1%の分解能を達成するには、100個のサンプルのみを収集する必要があるため、数秒で大型宇宙豚を識別できます。

おすすめ記事