現在のファイルシステムをBTRFSの最初のルートファイルシステムにする方法

現在のファイルシステムをBTRFSの最初のルートファイルシステムにする方法

私が正しく理解した場合、btrfsスナップショットは「最初のルートファイルシステム」と呼ばれるデフォルトのファイルシステムに関する変更のみを保存します。私の最初のルートファイルシステムは2017年に作成されたので、それ以来多くの変更が行われたため、スナップショットはかなり大きくなりました。スナップショットが重すぎないように、現在のファイルシステムを「最初のルートファイルシステム」にすることは可能ですか?

答え1

BTRFSスナップショットは、スナップショットが作成された時点のデータを参照します。そのデータを変更しようとすると、最初にデータがコピーされ、元のデータは変更されません。多くのスナップショットをアーカイブすると、確かに多くのストレージスペースが占められますが、個々のスナップショット自体のサイズは増えません。廃止された古いデータを参照するスナップショットがあるようです。スペースを解放するには、不要なスナップショットを削除するだけです。

説明する

簡単に言えば、スナップショットは時間の経過とともに固定データであり、関連する違いはなく、実装もLVMスナップショットとは異なります。これを証明するための簡単な実験は次のとおりです。

  1. サブボリュームを作成します。
  2. その中のデータを変更してください。
  3. 撮ってみてください。
  4. たとえば...数回繰り返して、さまざまな変更履歴をシミュレートします。
  5. 一部の中間スナップショットを削除します。

残りのスナップショットは影響を受けていないことを確認できます。 diffを使用している場合、中間スナップショットの削除はファイルシステムを破損するため、許可されません。

関連情報