Мій вбудований пристрій linux використовує SD-карту для збереження певних діагностичних даних, занадто багатих для внутрішнього спалаху.
Проблема полягає в тому, що якщо пристрій несподівано вимкнеться, файлова система (FAT32) на картці пошкоджена.
Ні в якому разі не можна запобігти несподіваному відключенню електроенергії або користувачеві вимкнути його так, і пристрій має бути відносно не потребує обслуговування. Гірше, що дані записуються постійно, тому пошкодження дуже часті, і Linux при виявленні несправних FS перераховує їх лише для читання.
Які методи ви б запропонували пом'якшити це? Чи вистачить автоматичного запуску fsck.vfat при запуску?
Ще трохи інформації:
- Картка користувачем не вважається видаленою. Це слід вважати внутрішнім диском. Будь-які збережені на ньому дані будуть доступні для завантаження через мережу або на USB-накопичувач, а система автоматично очищає найдавніші записи. Це означає, що його не потрібно читати у вашому середньому ПК.
- Наразі система підтримує FAT, yaffs та jffs2. Додавання інших файлових систем до ядра можливо, але якщо існують інші способи, то ми вважаємо за краще їх спочатку.
- Запис можна призупинити на вимогу навіть на кілька хвилин без втрати даних.
- прийнятна часткова втрата даних або незначна корупція. Повної зупинки лісозаготівлі немає.
- потужні події майже повністю непередбачувані.
- система працює на ARM9, 200 МГц, 64 МБ оперативної пам’яті, 32 Мб внутрішньої спалаху і використовує більшу частину процесорного живлення для своєї основної ролі. Враховуйте це, думаючи про фантастичні важкі рішення.