Linux システム ベースの LFS (Linux from Scrach) を使用しています。Linux カーネル バージョン 2.6.29.6 #1 SMP PREEMPT。このシステムは、Extlinux ブートローダーを使用し、SSD (Micron USB Solid State Device) から起動します。このシステムには 2 台目のハードドライブもありますが、起動用ではありません。SSD は HDD よりも高速で信頼性が高いことがわかったため、起動を HDD から SSD に変更しました。
停電が発生すると、ユニットが再起動し、停電によって SSD が破損します。再起動後、スクリプト checkfs によって Fsck コマンドが実行されます。システムはエラー メッセージ ""UNEXPECTED INCONSISTANCY; で停止します。fsck を手動で実行するとエラーが発生し、ユニットが停止し、手動で再起動するまで再起動に失敗します。
checkfs スクリプトを確認したところ、この状態で fsck -a -A -C -T が実行され、システムを停止して CD を使用して再起動し、fsck を実行することである 3 および 16 未満のエラー値が返されることがわかりました。手動で問題を修正します。
checkfs スクリプトを変更してみて、fsck -y を使用すると、すべてのエラーが修正され、ユニットは正常に起動しましたが、問題を修正している間に多くのファイルが削除されました。第 2 に、fsck エラーを無視してシステムを停止する代わりに、通常のブートを続行すると動作しますが、ファイル システムの問題が修正されないため、ユニットが正しく動作しない可能性があります。
この時点で、この問題を解決し、システムを正常に起動してファイルシステムの問題を修正するための回避策があるかどうかを知りたいですか? fsck が失敗した場合、SSD からルート ファイル システムをアンマウントし、HDD からマウントして通常どおりに起動し、起動後に SSD ファイルシステムを回復することができますか? はいの場合、これを行うためのポインタはありますか? 提案してください。