web-dev-qa-db-ja.com

異なるサブボリュームを持つルートファイルシステムのbtrfsをオンラインで再マウントします(スナップショット)

オンラインシステムにbtrfsルートファイルシステムがあるとします。ファイルシステムを以前の状態に戻したいと考えています。以前の状態にはスナップショットがあります。

remount /dev/sdaX / -o remount,subvol=snapshots/Y

記録のために、私はこれをテストシステムで行いました、そしてそれはnot動作します。コマンドはエラーなしで戻りますが、マウントされているサブボリュームは同じです。

これがdid動作した場合、結果はどうなりますか?私の推測では、開いているファイル記述子はまだ古いサブボリュームを指しているため、注意しないと、新しいサブボリュームで「データ損失」が発生する可能性があります。開いているすべてのファイル記述子を閉じて再度開くという問題が発生したとすると、これは実行可能ですか?それとも他の種類の問題がありますか?

6
goncalopp

いいえ、できません。すべてのIOを新しいサブボリュームにリダイレクトできたとしても、アクセス中にアプリケーションの下からファイルを変更すると、ファイルが破損し、アプリケーションが混乱する可能性があります。質問がプログラムだった場合、それはプログラムを混乱させ、運が良ければクラッシュするだけです。

2
psusi