Después de agregar el preloadpaquete, mis aplicaciones parecen acelerarse, pero si copio un archivo grande, el caché del archivo aumenta en más del doble del tamaño del archivo.
Al transferir una sola imagen de virtual box de 3-4 GB o un archivo de video a una unidad externa, este enorme caché parece eliminar todas las aplicaciones precargadas de la memoria, lo que aumenta los tiempos de carga y las caídas de rendimiento en general.
¿Hay alguna manera de copiar archivos grandes de varios gigabytes sin almacenarlos en caché (es decir, sin pasar por el caché de archivos)? ¿O una forma de incluir en la lista blanca o en la lista negra las carpetas específicas de la caché?
fuente

Para archivos grandes individuales, use
ddcon E / S directa para omitir el caché de archivos:Si desea transferir uno (o algunos) archivos grandes de varios gigabytes, es fácil hacerlo con
dd:directbanderas le indicanddque use la opción de E / S directa del núcleo (O_DIRECT) mientras lee y escribe, evitando por completo el caché del archivo.bsopción de tamaño de bloque debe establecerse en un valor razonablemente grande ya que para minimizar el número de operaciones físicas de discodddeben realizarse, ya que las lecturas / escrituras ya no se almacenan en caché y demasiadas operaciones directas pequeñas pueden provocar una desaceleración grave.4M).Para copias de directorios múltiples / recursivas , desafortunadamente, no hay herramientas fácilmente disponibles; lo habitual
cp, etc. no admiten E / S directas./ e iflags y oflags cambiaron al iflag y oflag correctos
fuente
zshel**operador de.zshnecesita ser instalado manualmente desde los repositorios.ddLa extraña sintaxis ensucia al oprtador **. Aún se podía utilizar un script de shell que tiene argumentos normalmente (dd.sh in.file out.filecon ** en los nombres de archivo) y dio los nombres de archivo addutilizar$1,$2etc, que no debe ser una falta de sintaxis extraña de dd.Se puede copiar un directorio de forma recursiva con
ddel usofindymkdirNecesitamos solucionar dos problemas:
ddno sabe qué hacer con los directoriosddsolo puede copiar un archivo a la vezPrimero definamos los directorios de entrada y salida:
Ahora vamos
cdal directorio de origen parafindinformar directorios relativos que podemos manipular fácilmente:Duplicar el árbol de directorios de
$SOURCEa$TARGETLos archivos duplicados de
$SOURCEque$TARGETla omisión de caché de escritura (pero utilizando caché de lectura!)Tenga en cuenta que esto no preservará los tiempos de modificación del archivo, la propiedad y otros atributos.
fuente