停電によるデータ破損を最も効果的に防ぐことができるファイルシステムは何ですか?

停電によるデータ破損を最も効果的に防ぐことができるファイルシステムは何ですか?

私はuClibcx86デバイスで小さな組み込みシステムを実行しています。busybox私はinitramfsを使用していますが、カスタム作成されたext3C ++アプリケーションによって生成された永続測定ロギングデータを保存するために使用するIDEモードのコンパクトフラッシュデバイスにカスタムディレクトリもインストールしました。ファイルシステムを選択したext3理由は、IDEモードでCFドライブを使用するときの電力損失を防ぐために読んだいくつかの本で推奨されているからです(組み込みLinuxシステムの構築著者:カリム・ヤグモール(Karim Yagmol)組み込みLinuxの起動著者:クリストファー・ハリナン)。これは特に重要であり、データが重要です。

しかし、以前の質問に対するいくつかの意見のためファイルの書き込み中に停電が発生した場合に破損したext3ファイルを修復する方法が混乱する実際、ファイルシステムは、停電によるデータ破損に対するセキュリティを提供していないようです。だから私は知りたいです。

  1. ext3実際にこの設定に最適な選択ですか?
  2. ディスクへの書き込み中に停電が発生した場合、ファイルに定期的に追加するデータ部分のみが破損しますか?みんな文書?
  3. データはいいえ電源を切った状態で文章を書くのは完全に安全ですか?特に私のinitramfs.cpioファイルが破損する危険がありますか?
  4. データを保護するために私のアプリケーションコードで使用する方法はありますか(例:追加のパーティションを作成し、私のデータをミラーに書き込んで常に2つのコピーを作成する)たくさんのコピー操作が許可されます。

私はこの関連質問に対する答えを見て読んだ。停電後もログファイルシステムが破損しないことを保証できますか?しかし、それは私を混乱させるいくつかの点を扱いません。

多くの質問をしていることは分かりますが、多くの資料を読んでいるにもかかわらず、停電が発生した場合、私のデータのリスクを根本的に理解していないようです。

ベストアンサー1

セキュリティに関するすべてのものと同様に、保証はありませんが、リスク(およびコスト)と確率のバランスをとる必要があります。経験に照らして(私は暗闇の時代から数十の* nix boxenを実行してきました)、電源によるファイルシステムの破損を実際に経験したことはありません。

これらのシステムの一部は、ジャーナリングではなくファイルシステム(通常はufsとext2)でも実行されます。一部は内蔵されており、一部はNokia N900のような携帯電話なので、良い電源は保証されません。

これは、ファイルシステムの破損が発生しないという意味ではなく、発生する可能性が十分に低く、心配する必要がないという意味です。それにもかかわらず、賭けをヘッジしない理由はありません。

文字通りの質問に答えるには:

  1. 少なくともあなたが引用した最初の本は以前に書かれたものですext4。著者が使用を提案したとき、実際には「不安定なファイルやジャーナリング以外のファイルシステムを使用しないでください」とext3言っていました。ext2一度試してみてくださいext4。非常に完成度が高く、フラッシュデバイスの寿命を延ばすことができる非回転ディスクにはいくつかの良いオプションがあります。
  2. 完全なファイルではなく、最後の1〜2ブロックが失われる可能性があります。ジャーナリングファイルシステムの場合、これは唯一の損失です。いくつかのエラーシナリオでは、ファイル全体にランダムなデータが散在していることがわかりますが、これはマイクロ隕石が組み込まれたデバイスを直接強打するようです。
  3. 2を参照してください。 100.00% 安全なものはありません。
  4. 2番目のIDEチャネルがある場合は、ここに2番目のCFカードを挿入してファイルシステムを定期的にバックアップしてください。これを行うにはいくつかの方法がありますrsynccp dumpファイルシステムの破損などの危険があります。 LVMでは、スナップショットを撮ることもできます。データ収集組み込みデバイスの場合は、2番目のファイルシステムをマウントし、データログをコピーしてすぐにマウント解除する一時的なソリューションのみを使用します。デバイスに良いブートイメージがあるかどうかが心配な場合は、ブートマネージャの2番目のコピーと必要なすべてのブートイメージを2番目のデバイスに貼り付けて、2つのCFカードのいずれかから起動するようにコンピュータを設定します。ddmd(4)

    私は2番目のコピーを信じていません同じストレージデバイスは、安定したファイルシステムよりもエラーが発生する可能性が高いためです。たくさんこれまでの経験によると(職場で金曜日の午後にディスク故障の可能性が驚くほど高いというのは冗談です。しばらくはほぼ毎週行事でした)。ディスクが回転しているかどうかに関係なく、失敗する可能性があります。したがって、可能であれば、卵を2つのバスケットに入れて、データをよりよく保護できます。

    データが特に機密性の高い場合は、定期的にデバイスにアクセスし、バックアップCFを新しいものと交換してから再起動して、fsckすべてのファイルシステムを完全に活用しました。

おすすめ記事