ワンステップでbtrfsファイルシステムのサイズを最小サイズに調整

ワンステップでbtrfsファイルシステムのサイズを最小サイズに調整

1つのステップでbtrfsファイルシステムのサイズをできるだけ小さくする方法は?

私はddできるだけ少量のデータが欲しく、スナップショットが多いほど遅くなるので、ddそれを使いたいと思います。btrfs send

btrfs filesystem resizemax議論はありますが、min議論はありません。

空き容量を超えてサイズを変更しようとすると、次のメッセージが表示されます。

ERROR: unable to resize '/media/backup-alt': No space left on device

徐々にサイズを縮小していますが(例:引数渡し-128G -64G-32G...)、収束に時間がかかるソリューションです。

一段階で最小限に抑える方法はないでしょうか?

ベストアンサー1

これまでに見た最高のソリューションは、最小の空き領域(-bバイト)を取得することです。

sudo btrfs filesystem usage -b /mountpoint
   Free (estimated):              71890542592 (min: 71890542592)

次に、金額の負の数にサイズを変更しますmin

sudo btrfs filesystem resize -71890542592 /mountpoint

あるいは、最小空きバイト数と未割り当てバイト数の間に大きな違いがある場合、割り当てられていないバイトの正確な数だけサイズを変更することは失敗するように見えるため、(unallocated * 0.9)を使用することを選択できます。

その後、サイズ変更が失敗するまで繰り返し少しずつ縮小できます。

while sudo btrfs filesystem resize -200M /mountpoint; do true; done

正確には一歩ではありませんが、少なくともほとんどは自動化されています。ループ自体は 1 つのステップにすることができますが、小さな増分サイズ変更を実行すると、最初に大きな塊を縮小するよりも時間がかかります。

おすすめ記事