J'exécute mon application sur colibri-vf50toradex (passant sur la distribution angstrom) ayant une base de données sqlite réside sur sd-card. Ma carte SD devient en lecture seule chaque fois que je coupe l'alimentation juste après le démarrage de la carte (au même moment, mon application commence à établir une connexion avec db). A cause de cela, je reçois une erreur dans dmesg telle que "FAT-fs (mmcblk0p1): erreur, grappes mal calculées".
Après cela, sqlite ne peut pas écrire en db. J'ai également essayé de réparer en utilisant fsck en utilisant la commande ci-dessous mais je n'ai pas réussi.
$ fsck.msdos -r -v /dev/mmcblk
Currently, only 1 or 2 FATs are supported, not 251.
J'ai aussi essayé avec divers journal_mode de sqlite mais ne pouvait pas empêcher. Alors, comment puis-je empêcher ma carte SD de devenir en lecture seule et aussi comment réparer à bord?
Merci d'avance
Réponses:
0 pour la réponse № 1Comme dosfstools n'est pas disponible en angstrom sur lequel le conseil est en cours d'exécution. Si incapable de réparer la carte SD à bord de lui-même. Mais il est possible de réparer sur un ordinateur portable en utilisant la commande suivante: sudo dosfsck -r -a / dev / sdb1
Donc, pour éviter tout problème, j'ai changé le système de fichiers de FAT32 à ext4. Dans lequel fsck effectue la récupération au démarrage.
0 pour la réponse № 2
J'ai utilisé kparted, démonte l'appareil avant, puis marquez la partition, puis, en haut, périphérique, créez une nouvelle FAT. Puis fait une nouvelle partition et tout fonctionne à nouveau.