
Me gustaría ejecutar un proceso de Linux en un entorno de escritura falsa donde todos los archivos se escriben (con elescribir(2)llamada al sistema) se redirigen a una caché en memoria y las lecturas posteriores (solo de la misma región) se realizarán desde la caché. El caché se puede descartar una vez finalizado el proceso.
Los archivos que modificará el proceso son enormes (varios terabytes), pero la cantidad total de datos escritos es pequeña (unos pocos megabytes). Entonces overlayfs no es una opción, porque no tengo varios terabytes de espacio libre.
Tenga en cuenta que no me importan los nodos de dispositivos falsos o los permisos falsos, por lo tantoraíz falsa(1)no me ayuda.
Esto debería ser posible implementar con LD_PRELOAD,ruta(2),fusible(8)oinstantánea dm. ¿Existe alguna herramienta que lo haga por mí, como esta?
$ fakewrites ./myprog myfile.dat
Respuesta1
https://launchpad.net/libeatmydata
Biblioteca LD_PRELOAD que deshabilita todas las formas de escritura de datos de forma segura en el disco. fsync() se convierte en NO-OP, O_SYNC se elimina, etc. La idea es utilizarlo en pruebas para obtener ejecuciones de prueba más rápidas donde no se requiere durabilidad real.