私はx86デバイス上で小型uClibc
でbusybox
ベースの組み込みシステムを実行しています。私はinitramfsを使用していext3
ますが、カスタムのc ++アプリケーションで作成された永続的な測定ログデータを保存するために使用しているIDEモードのコンパクトフラッシュデバイスにカスタムディレクトリをマウントしています。私ext3
が読んだいくつかの本(Building Embedded Linux SystemsによるKarim YaghmourとEmbedded Linux PrimerによるChristopher Hallinan)でCFドライブをIDEモードで使用するときの電力損失に対する安全性のために推奨されているので、ファイルシステムを選択しました。これは特に重要であり、データは重要です。
ただし、以前の質問のコメントの一部が原因で、ファイルの書き込み中に停電が発生した場合に破損したext3ファイルを復元する方法と混同しているため、このファイルシステムは、電源によるデータの破損に対する安全性を保証していないようです損失。だから私は知りたいのですが
- で
ext3
、実際にこのセットアップのために最良の選択? - ディスク書き込み操作中の停電は、定期的にファイルに追加しているデータの一部のみを破壊しますか、それともファイル全体を破壊しますか?
- 停電時に書き込まれていないデータは完全に安全ですか?特に、
initramfs.cpio
ファイルが破損するリスクはありますか? - アプリケーションコードでデータを保護するために使用できる方法はありますか(つまり、追加のパーティションを作成し、データをミラーイメージに書き込んで常に2つのコピーが存在するようにします)-アプリケーションにとって速度は実際の問題ではないため、高価なコピー操作です許容されます。
私はこの関連する質問に対する回答を見て読んだことがあります。ジャーナリングファイルシステムは、停電後の破損を保証しますか?、しかしそれは私を混乱させるいくつかのことを完全にはカバーしていません。
私は多くの質問をしていることを認識していますが、多くの資料を読んだにもかかわらず、停電時のデータへのリスクを理解するのに根本的な失敗があったようです。