colibri-vf50でアプリケーションを実行していますsqliteデータベースを備えたtoradex(オングストローム分布で実行)ボードは、SDカードに常駐しています。私のSDカードは読み取り専用になります ボードの起動直後に電源を切断するたびに(アプリがdbとの接続を開始するのと同時に)。このため、「FAT-fs(mmcblk0p1):エラー、クラスターの計算が正しくありません」などのdmesgでエラーが発生します。
この後、sqliteはdbに書き込むことができません。また、以下のコマンドを使用してfsckを使用して修復しようとしましたが、成功しませんでした。
$ fsck.msdos -r -v /dev/mmcblk
Currently, only 1 or 2 FATs are supported, not 251.
私もいろいろ試しました sqliteのjournel_mode しかし、防ぐことができませんでした。だから私はどのように私のSDカードが読み取り専用になるのを防ぐことができますか、またボード上で修復する方法もありますか?
前もって感謝します
回答:
回答№1は0ボードが実行されているオングストロームではdosfstoolsは利用できないためです。そのため、ボード自体のSDカードを修復できません。ただし、次のコマンドを使用してラップトップで修復することは可能です。 sudo dosfsck -r -a / dev / sdb1
そこで、問題を防ぐために、ファイルシステムをFAT32からext4に変更しました。ブート時にfsckがリカバリを実行します。
回答№2の場合は0
前にkpartedを使用し、デバイスをアンマウントしました。 次にパーティションをマークしてから、一番上にあるデバイスで新しいFATを作成します。 その後、新しいパーティションを作成し、すべてが再び機能しました。