複数のスナップショットが「指定する」ファイルを修正

複数のスナップショットが「指定する」ファイルを修正

私はbtrfsとスナッパーを使用しています。したがって、読み取り専用としてマークされた定期的なbtrfsスナップショットがいくつかあります(もちろん、btrfsを介してr / wに変更して再び戻すことができます)。

最初のインストール中にvimrcを設定したとしましょう。そして今、vimrcを変更してスナップショットに戻ったら、私のvimrcが新しいものになるようにしたいとしましょう。はい、これは履歴を完全に書き直し、履歴バックアップのアイデアに反します。しかし、テスト目的でアクティブなスナップショットを頻繁に変更し、そのようないくつかの設定ファイルを変更し続けたくないとしましょう。マイファイルのバックアップを削除できます。

これで、使用/指定されているvimrcファイルの内容のコピーは1つだけ必要です。これは、最初のスナップショット以降に変更されたことがないためです。

「すべて」が更新されるようにvimrcファイルを変更する方法はありますか?

編集中に書き込み中にコピーを無視し、1つのファイルに対してのみ実行して、バックグラウンドのすべてのシステムファイルがCOWを引き続き使用できますか?ファイルが新しいものではないか空であるため、chattrのNOCOWを使用できないことがわかりました。別の方法がありますか?

または、ライブファイルを編集し、すべてのスナップショットを読み取り/書き込みに切り替え、すべてのスナップショットファイルに対してcp -ax --reflink = alwaysを実行してから、すべてのスナップショットを読み取り/書き込みに切り替える必要がありますか?これを実行できるスナップショットがたくさんあります。 (もちろん、この痛みをあまり苦痛にするスクリプトがあります。)

答え1

BTRFSツールセットではこれを実行できません。

しかし:

ライブメディアからシステムを起動し、16進エディタでRAWパーティション(例:/ dev / sda1)を開きます。検索機能を使用してディスク上のファイルを検索し、ファイルがすべて1つの範囲になるように変更を短くして簡単に作業できます。ファイルを編集したことがないため、変更できるコピーは1つだけ必要です。そうでない場合は、fstrimまたは同様のツールを使用してディスクの未使用部分を消去して重複コピーを削除してください。

注:ファイルの長さを変更しないでください。そうしないと、問題が発生する可能性があります。長さを減らしてnullなどで埋めることはできますが、長くすることはできません。そうしないと、ファイルシステムが破損します。

注:BTRFSチェックサムのためにファイルシステムをマウントして使用しようとすると、読み取りエラーが検出されます。チェックサムツリー全体を削除して再作成するには、回復ツールを使用する必要があります。これを試す前に、回復する必要がある破損したデータがないことを確認してください。

注:これ悪いこのアイデアは、努力とリスクを取る価値がないことがほぼ確実です!スナップショットを残して復元する必要がある場合は、このファイルを更新するように注意してください。大丈夫でしょう!

関連情報