Estoy ejecutando un sistema integrado pequeño uClibc
y busybox
basado en un dispositivo x86. Estoy usando un initramfs pero también estoy montando un ext3
directorio personalizado en un dispositivo flash compacto en modo IDE que estoy usando para almacenar datos de registro de medición persistente creados por una aplicación personalizada de c ++ escrita. Elegí el ext3
sistema de archivos, ya que se recomienda para la seguridad contra la pérdida de energía cuando uso unidades CF en modo IDE en un par de libros que he leído ( Building Embedded Linux Systems de Karim Yaghmour y Embedded Linux Primer de Christopher Hallinan). Esto es particularmente importante y los datos son críticos.
Sin embargo, debido a algunos de los comentarios en mi pregunta anterior Confusión con la forma de restaurar archivos ext3 corruptos si se produce un corte de energía durante la escritura de un archivo , parecería que, de hecho, este sistema de archivos no ofrece la garantía de seguridad contra la corrupción de datos debido al poder pérdida. Entonces me gustaría saber si
- ¿Es
ext3
realmente la mejor opción para esta configuración? - ¿La pérdida de energía durante una operación de escritura de disco solo corrompe la porción de datos que adjunto al archivo periódicamente o puede corromper todo el archivo?
- ¿Los datos que no se escriben en el punto de pérdida de energía son completamente seguros? En particular, ¿existe algún riesgo de que mi
initramfs.cpio
archivo también se corrompa? - ¿Hay algún método que pueda utilizar en el código de mi aplicación para proteger los datos (es decir, crear una partición adicional y escribir mis datos en imágenes espejo para que siempre haya 2 copias)? son aceptables
He visto y leído las respuestas a esta pregunta relacionada: ¿Garantizan los sistemas de archivos de diario contra la corrupción después de un corte de energía? , pero no cubre algunas de las cosas que me confunden.
Me doy cuenta de que estoy haciendo muchas preguntas, pero parece que a pesar de leer mucho material, he tenido una falla fundamental para comprender los riesgos para mis datos en caso de pérdida de energía.